Cap 1 - Introduccion Sistemas Distribuidos

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 24

UNIVERSIDAD POLITÉCNICA SALESIANA

Carrera de Ingeniería de Sistemas


Sistemas Distribuidos

SISTEMAS DISTRIBUIDOS
INTRODUCCIÓN
Introducción

· Existe una tendencia inevitable al desarrollo de


aplicaciones distribuidas.
· El procesamiento distribuido permite dispersar los
procesadores, datos y otros elementos de una aplicación.
· La dispersión ofrece un sistema mas sensible a las
necesidades de los usuarios, capaz de ofrecer tiempos de
respuesta mejores y minimizar los costes de
comunicación.

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Definición

· Un sistema distribuido consiste de un gran número de


CPUs conectados por medio de una red.
 Un sistema distribuido se encarga del procesamiento
cooperativo de solicitudes mediante una colección de
computadoras independientes que aparecen ante los
usuarios del sistema como una única computadora.
 Un sistema distribuido es una colección de computadoras
independientes que dan al usuario la impresión de
constituir un único sistema coherente.
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas
Definición
 Sistemas cuyos componentes hardware y software, que
están en ordenadores conectados en red, se comunican y
coordinan sus acciones mediante el paso de mensajes, para
el logro de un objetivo. Se establece la comunicación
mediante un protocolo prefijado por un esquema cliente-
servidor.
 Un sistema de computación distribuido consta de múltiples
procesadores autónomos que no comparten memoria
principal, sino que cooperan a través de una red de
comunicaciones que los interconecta.
 Colección de elementos de cómputo autónomo que se
encuentran físicamente separados y no comparten una
memoria común, se comunican entre sí a través del
intercambio de mensajes utilizando un medio de
comunicación.

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Definición
• Con el objeto de dar soporte a computadoras y redes heterogéneas
mientras se ofrece la vista de un sistema único, los sistemas
distribuidos se organizan a menudo en términos de una capa de
software, esto es, vienen colocados de manera lógica entre una
capa de alto nivel que consta de usuarios y aplicaciones, y una capa
subyacente constituida por sistemas operativos y recursos básicos
de comunicación

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Objetivos
 Un sistema distribuido:
• debe hacer que los recursos sean
fácilmente accesibles
• debe ocultar de manera razonable
el hecho de que los recursos están
distribuidos por toda la red
• debe ser abierto
• debe ser escalable

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Cómo hacer accesibles los recursos
 El principal objetivo de un sistema distribuido es facilitar a los usuarios (y a
las aplicaciones) el acceso a los recursos remotos(impresoras,
computadoras, dispositivos de almacenamiento, datos, archivos, páginas
web, redes, etc.) y compartirlos de manera controlada y eficiente
 Beneficios: facilita la colaboración y el intercambio de información
 Desventajas: mientras la conectividad y el intercambio aumentan, la seguridad
se vuelve cada vez más importante:
 Claves y otra información sensible se envían como texto sin codificar (es decir, sin
encriptar) a través de la red
 rastrear comunicaciones para construir un perfil de preferencias para un usuario
específico viola de manera explícita la privacidad, especialmente cuando se hace sin
notificarle al usuario
 comunicación no deseada, tal como el correo basura, con frecuencia llamado spam

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Transparencia en la
distribución
 Un objetivo importante de un sistema
distribuido es ocultar el hecho de que sus
procesos y recursos están físicamente
distribuidos a través de múltiples
computadoras
 TIPOS DE TRANSPARENCIA:

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Grado de
apertura

 Un sistema distribuido abierto es un sistema que ofrece


servicios de acuerdo con las reglas estándar que describen
la sintaxis y la semántica de dichos servicios.
 En los sistemas distribuidos, los servicios se especifican a
través de interfaces, las cuales a menudo se definen como
lenguaje de definición de interfaz (IDL)
 las definiciones de las interfaces deben ser completas y
neutrales para lograr la interoperabilidad y portabilidad

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Grado de apertura
 La interoperabilidad define la extensión mediante la cual
dos implementaciones de sistemas o componentes de
fabricantes distintos pueden coexistir y trabajar juntos si
únicamente se apoyan en sus servicios mutuos tal como
se especifica mediante un estándar común.
 La portabilidad define la extensión mediante la cual una
aplicación desarrollada para un sistema distribuido A se
pueda ejecutar, sin modificación, en un sistema
distribuido B que comparte la misma interfaz que A.
 Un sistema distribuido abierto debe ser también
extensible, en un sistema extensible, debiera ser
relativamente fácil agregar nuevos componentes o
reemplazar los existentes sin afectar a los existentes,
dicha flexibilidad es más fácil de decir que de alcanzar

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Escalabilidad

 La escalabilidad de un sistema se puede medir de acuerdo con al


menos tres dimensiones (Neuman, 1994).
1. Un sistema puede ser escalable con respecto a su tamaño, lo cual
significa que podemos agregarle fácilmente usuarios y recursos.
2. Un sistema escalable geográficamente es aquel en el cual usuarios y
recursos pueden radicar muy lejos unos de los otros.
3. Un sistema puede ser escalable administrativamente; esto es, puede
ser fácil de manejar incluso si involucra muchas organizaciones
administrativas diferentes.
Desafortunadamente, con frecuencia un sistema escalable en una o
más de estas dimensiones exhibe alguna pérdida de rendimiento al
escalarlo
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas
Problemas de escalabilidad

 Escalabilidad relativa al tamaño: servicios, datos, y


algoritmos centralizados
 Escalabilidad geográfica: comunicación síncrona,
comunicación inherentemente no fiable, soluciones
centralizadas
 Escalar un sistema a través de múltiples dominios
administrativamente independientes

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Técnicas de escalamiento

 Ocultar las latencias de:


1. Comunicación: intentar evitar lo más posible la espera por respuestas de
peticiones remotas (y potencialmente distantes) de servicios:
a) comunicación asíncrona
b) uso de hilos
c) reducir el volumen general de la comunicación
2. Distribución: significa tomar un componente, dividirlo en partes más
pequeñas, y en consecuencia dispersar dichas partes a lo largo del sistema
 Replicación: no solamente incrementa la disponibilidad, sino que además
ayuda a balancear la carga entre los componentes para obtener un mejor
rendimiento. Ej. Uso de caché, el caché y la replicación provocan
problemas de consistencia (incoherencia en la información).
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas
Trampas
 Peter Deutsch, en aquel entonces de Sun Microsystems,
formuló estos errores como las siguientes falsas
suposiciones que todos hacemos al desarrollar por primera
vez un sistema distribuido:
1. La red es confiable.
2. La red es segura.
3. La red es homogénea.
4. La topología no cambia.
5. La latencia es igual a cero.
6. El ancho de banda es infinito.
7. El costo de transporte es igual a cero.
8. Existe un administrador.
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas
TIPOS DE SISTEMAS DISTRIBUIDOS

 SISTEMAS DISTRIBUIDOS DE CÓMPUTO


 SISTEMAS DISTRIBUIDOS DE INFORMACIÓN
 SISTEMAS DISTRIBUIDOS EMBEBIDOS.

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos de cómputo
 Utilizada para realizar tareas de cómputo de alto rendimiento.
 Sistemas de cómputo en cluster: la computación en cluster se
utiliza para la programación en paralelo donde un solo programa
(de cálculo intensivo) corre paralelamente en múltiples
máquinas. Son homogeneas

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos de cómputo
 Sistemas de cómputo en grid: tienen un alto grado de heterogeneidad. Una
cuestión clave en un sistema de cómputo en grid es reunir los recursos de
diferentes organizaciones para permitir la colaboración de un grupo de
personas o instituciones. Tal colaboración se realiza en la forma de una
organización virtual
 la mayor parte del software para elaborar un sistema de cómputo en grid
evoluciona alrededor del otorgamiento de privilegios a los recursos desde
diferentes dominios administrativos. Con frecuencia la atención está puesta en
asuntos de arquitectura

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos de cómputo
 La capa más baja, de fabricación, proporciona interfaces para recursos locales
ubicados en un sitio específico. Por lo general, proporcionan funciones para
consultar el estado y las capacidades de un recurso, junto con funciones para la
administración real de un recurso
 La capa de conectividad consiste en protocolos de comunicación para dar soporte a
las transacciones del grid que abarcan el uso de múltiples recursos. Además,
contiene protocolos de seguridad para autentificar a usuarios y recursos
 La capa de recursos es responsable de la administración de un solo recurso. Utiliza
las funciones proporcionadas por la capa de conectividad y llama de manera directa
a las interfaces puestas a disposición mediante la capa de fabricación
 La capa colectiva se encarga de manipular el acceso a múltiples recursos y, por lo
general, consta de servicios para descubrir recursos, ubicación y calendarización de
tareas dentro de múltiples recursos, replicación de datos. La capa colectiva pudiera
consistir en muchos protocolos diferentes para muchos propósitos diferentes
 La capa de aplicaciones consta de aplicaciones que operan dentro de una
organización virtual y hacen uso del ambiente de cómputo en grid.

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos de información

 Esta clase de sistemas distribuidos se encuentran en


organizaciones que fueron confrontadas con
aplicaciones de red saludables
 programas remotos, llamados clientes
 Peticiones, posiblemente para distintos servidores,
dentro de una sola petición más grande y ejecutarla
como una transacción distribuida
 Esto ha derivado en una gran industria que se concentra
en la integración de aplicaciones empresariales
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas
Sistemas distribuidos de información:
Sistemas de procesamiento de transacciones

 BEGIN_TRANSACTION y END_TRANSACTION se utilizan para


delimitar el alcance de una transacción. Las operaciones
entre estas primitivas forman el cuerpo de la transacción
 La característica clásica de una transacción es que, o se
ejecutan todas sus operaciones, o no se ejecuta ninguna
operación. Las operaciones pueden ser llamadas del
sistema, procedimientos de biblioteca, o instrucciones de un
lenguaje encerradas entre paréntesis, según la
implementación

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos de información:
Sistemas de procesamiento de transacciones

 De manera más específica, las transacciones son:


 1. Atómicas: para el mundo exterior, la transacción es
indivisible.
 2. Consistentes: la transacción no viola sistemas
invariantes.
 3. Aisladas: las transacciones concurrentes no
interfieren entre sí.
 4. Durables: una vez que se confirma una transacción,
los cambios son permanentes
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas
Sistemas distribuidos de información:
Integración de aplicaciones empresariales

 La idea principal fue que aplicaciones existentes


pudieran intercambiar información de manera directa

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos de información:
Integración de aplicaciones empresariales

 Existen diversos tipos de comunicación middleware


 llamadas a procedimientos remotos (RPC)
 invocaciones a métodos remotos (RMI)
 middleware orientado a mensajes, o MOM
 sistemas de publicación- suscripción

Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos


Carrera: Ingeniería de Sistemas
Sistemas distribuidos masivos

 Con frecuencia los dispositivos se caracterizan por ser


pequeños, de baterías, portátiles, y tienen sólo una
conexión inalámbrica, aunque no todas estas
características son aplicables a todos los dispositivos.
 Una característica importante es su carencia general de
control administrativo humano
 Sistemas caseros
 Sistemas electrónicos para el cuidado de la salud
 Redes de monitoreo
Ing. Vanessa Jurado Vite Mag. – Sistemas Distribuidos
Carrera: Ingeniería de Sistemas

También podría gustarte