Upload
quispe-quichca-edgar-juan
View
28
Download
0
Embed Size (px)
Citation preview
SISTEMAS DISTRIBUIDOS
LEPM
201
4 - I
I
1
UNIVERSIDAD NACIONAL DE HUANCAVELICA
FACULTAD DE INGENIERÍA ELECTRÓNICA - SISTEMAS
ESCUELA ACADÉMICO PROFESIONAL DE SISTEMAS
Ing. Luís E. Pacheco Moscoso
INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS
Antecedentes
Dos grandes avances tecnológicos en los 80’sDesarrollo de microprocesadores
De una máquina de 10 millones de dólares que ejecuta una instrucción por minuto, se pasa a máquinas de 1000 dólares que ejecutan 10 millones de instrucciones por seg..
Invención de redesPosibilidad de conectar uno o más computadoras entre sí
•Roll Royce de 100 dólares con un billón de kilómetros por litro•Tamaño manual para abrir puerta: 200 pgs.
LEPM
201
4 - I
I
2
Introducción
• Redes de comunicación: Permiten conectar decenas, centenas y todas las máquinas que se requieran (Internet).
• Sistemas Operativos distribuidos que permitan cooperar y multiplicar la potencia del cálculo.
LEPM
201
4 - I
I
3
Desarrollos conceptuales1960s 1970s 1980s
Tiempo Compartido
Gráficas
Redes
Computadoras como
herramientaspersonales
Estaciones detrabajo
Cliente/Servidor
Redes Locales
Sistemasabiertos,
escalables,tolerantes
a fallas
Ideasclave
Inst
ituci
ones
pila
res Xerox Alto
Lisp machineApple IISmalltalkAloha net
MIT CTSSCambridge TSSTenex, UnixSketchpadARPANET
experiencia requerimientos experiencia requerimientosCiclos
Xerox DoradoSun 1, Apollo DomainXerox: DFS, GrapevineBerkeley UnixNewcastle ConnectionCambridge DCSEthernet, Cambridge Ring
Sistema V - StanfordSun NFSMIT: X-11, ArgusCMU: Accent, AndrewMachAmoebaChrous
LEPM
201
4 - I
I
4
Sistemas Distribuidos• Conjunto de computadoras independientes que se
presenta a los usuarios como un sistema único.• Aspectos
• El hardware : máquinas autónomas, es decir, que puedan operar sin la supervisión de ninguna otra.
• El software : Debe conseguir que los usuarios del sistema lo vean como una máquina central convencional única
LEPM
201
4 - I
I
5
Sistemas Distribuidos
• Conjunto de entidades que se comunican entre ellos a través de mensajes, los cuales son enviados sobre vías de comunicación.
• Entidades: Procesos, computadoras, redes computadoras,
dispositivos, procesadores etc..
LEPM
201
4 - I
I
6
Elementos de Sistemas Distribuidos
LEPM
201
4 - I
I
7
(1) Procesosreciben, manipulan, transforman y emiten datos
(2) Vías de comunicaciónmedio sobre el cual circulan los datos y que forman una red local dotado de propiedades estructurales y dinámicas.
Los procesos
LEPM
201
4 - I
I
8
- Término introducido por Dijkstra en 1968 para modelar las relaciones entre diferentes unidades de ejecución independientes que deben compartir recursos comunes, (materiales y lógicos)
- En sistemas distribuidos, unidad de ejecución elemental de un algoritmo distribuido o paralelo; diversas de esas unidades pueden ejecutarse simultáneamente, y cada una es indivisible.
Las Vías de Comunicación
• Medio a través del cual viajan los mensajes
• Sistema distribuido: vías de comunicación
virtuales
• Propiedades:
1. Propiedades estructurales
2. Propiedades comportamentales
LEPM
201
4 - I
I
9
Propiedades Estructurales
• Son de naturaleza topológica• Se refiere a las mallas de comunicación• Toda topología es posible según el problema tratado y el algoritmo distribuido que lo resuelve.• Estructuras más comunes:
1. Anillo2. Estrella3. Árbol
LEPM
201
4 - I
I
10
Propiedades Comportamentales
LEPM
201
4 - I
I
11
Hipótesis sobre comportamiento de las vías de comunicación.
1. Transmisión se hace sin duplicación de mensajes2. Transmisión sin alteración de mensajes3. Entre dos procesos el orden de recepción de mensajes es idéntico a su orden de emisión: no hay desplazamientos4. Tiempo de espera de un mensaje es finito, (aunque aleatorio), (no hay perdida de mensajes).5. Tiempo atención limitado => existe una cota superior si no hay perdida de mensaje mensaje fue recibido en caso contrario mensaje recibido o perdido
Características de los sistemas distribuidos
• Uso de un sistema de comunicación.• Ausencia de memoria común.• Sincronización del trabajo.• Ausencia de un estado global perceptible por un
observador.• Comunicación a través de mensajes.
LEPM
201
4 - I
I
12
Tolerancia a fallas
• Sistema distribuido que puede seguir funcionando, (tal vez con un menor desempeño), a pesar de que uno de sus componentes no este funcionando (sistemas robustos).• Redundancia de hardware• Recuperación de software LE
PM 2
014
- II
13
Confiabilidad
• Datos transmitidos a través de vías de comunicación
• Posibilidad de pérdida y modificación de datos (Capacidades de recuperación de datos)
LEPM
201
4 - I
I
14
Disponibilidad
• Falla en una sola computadora multiusuario da como resultado la no disponibilidad del sistema para todos sus usuarios.
• Cuando uno de los componentes falla en un sistema distribuido solo el trabajo que estaba usando el componente es afectado.
• Un usuario puede moverse a otra estación si la que usa falla, o un servidor puede reinicializarse en otra computadora.
LEPM
201
4 - I
I
15
Apertura del sistema
• Sistemas abiertos distribuidos proporcionan un mecanismo de comunicación de procesos uniforme y publican interfaces para el acceso a recursos compartidos.
• Pueden ser construidos a partir de software y hardware heterogeneo.
LEPM
201
4 - I
I
16
Concurrencia
• Varios procesos se encuentran sobre una sola computadora.
• Ejecución intercalada en el caso de un solo procesador y simultanea si existen n procesadores.
• Ejecución paralela posible debido a:• Varios usuarios invocan comandos o interactuan con
programas de aplicación.• Varios procesos servidores se corren
concurrentemente.
LEPM
201
4 - I
I
17
Escalabilidad
• Sistemas distribuidos deben operar efectiva y eficientemente en diferentes escalas.
• Sistema distribuido práctico más chico: dos estaciones y un servidor de archivos.
• Sistemas distribuidos grandes
LEPM
201
4 - I
I
18
Ventajas- Relativamente fácil y económico poner en conjunto
sistemas compuestos de un gran número de procesadores, (CPUs), conectados en red.
- Dos entidades trabajan más rápido que una sola.
- Necesidad de sincronizar los trabajos de cada componente
LEPM
201
4 - I
I
19
Objetivos• Limitaciones geográficas• Seguridad (En un sistema centralizado existe un
único punto de fallo)• Aumento constante de Potencia de cómputo : Si
la potencia del sistema llega a ser insuficiente (Adquirir un nuevo equipo MainFrame vs Adquirir computadoras personales)
LEPM
201
4 - I
I
20
Aspectos clave en el Diseño de los Sistemas Operativos Distribuidos
• Tolerancia a fallas.• Transparencia a la ocurrencia (El usuario no
debe notar otros usuarios en el sistema).• Transparencia al paralelismo (Asignar los
procesadores a las actividades del programa sin el concurso del programador).
• Fiabilidad (Fiabilidad global del sistema).• Escalabilidad (Habilitar crecimiento de acuerdo a
la demanda).
LEPM
201
4 - I
I
21
Aspectos Básicos de Diseño de Sistemas DistribuidosAspectos Básicos de Diseño de Sistemas Distribuidos• Naming• Comunicación• Estructura software• Asignación de carga• Consistencia
LEPM
201
4 - I
I
22
NamingNaming
• Nombramiento de los diferentes recursos • Nombres deben de tener significados globales• Involucra las siguientes consideraciones:
• La elección del tamaño del nombre para cada tipo de recurso, (puede ser finito o potencialmente infinitio)
• Nombres deben de ser “mapeados” por identificadores de comunicación
• Un nombre depende de su contexto, por lo que para resolver un nombre es necesario el nombre y un contexto
LEPM
201
4 - I
I
23
ComunicaciónComunicación
• Componentes separados lógica y físicamente, por lo que necesitan comunicarse entre ellos para interactuar
• Comunicación involucra las operaciones siguientes:• la transferencia de datos• la sincronización de la recepción con la emisión
• Dos enfoques en sistemas distribuidos:• paso de mensajes• llamado de procedimiento remoto
• Existen dos modelos:• modelo de comunicación par a par• modelo de comunicación grupal
LEPM
201
4 - I
I
24
Estructura softwareEstructura software• Sistemas centralizados son monolíticos:
• conjunto abstracciones que se ofrece a las aplicaciones estan reunidas en una sola interfaz
• Sistemas distribuidos• programas aplicación pueden accesar diferentes
servicios , en el cual cada uno cuenta con su propia interfaz para accesar recursos
• Principales niveles• aplicaciones• soporte de lenguaje de programación• sistema operativo• hardware
LEPM
201
4 - I
I
25
Asignación cargaAsignación carga• Dado un proceso, en donde se va a ejecutar• Modelo simple la capacidad de memoria y el desempeño
de un procesador de una estación determina el tamaño máximo de tarea que se puede ejecutar
• Modelos• modelo de servidor de estación• modelo de piscina de procesadores• modelo de la estación de trabajo• modelo de memoria compartida distribuida
LEPM
201
4 - I
I
26
ConsistenciaConsistencia• Diferentes procesos accesan y actualizan datos
concurrentemente• Los cambios no son instantaneos• Un cierto conjunto de cambios debe de aparecer igual a
todos los otros procesos que integran el sistema distribuido.
• Tipos consistencia:• consistencia de actualización• consistencia de replica• consistencia de caché• consistencia de fallas• consistencia de reloj• consistencia de interfaz de usuario
LEPM
201
4 - I
I
27
Algoritmos Distribuidos• Definición: abstracción lógica de un sistema distribuido,
se habla de un conjunto de procesos y de líneas de comunicación virtuales
• Se habla de algoritmos concurrentes ejecutados en diferentes procesadores,
• Originalmente los algoritmos eran diseñados para ejecutarse procesadores distribuidos en un área grande
• Hoy en día incluye algoritmos usados en redes de área local y multiprocesadores que comparten memoria
LEPM
201
4 - I
I
28
Algoritmos distribuidos aplicación
• Son los algoritmos que definen una aplicación • Representan la interfaz final entre los usuarios y el
sistema distribuido• Se apoyan en arquitecturas de software como:
• CORBA: Common Object Request Broker Architecture• COM: Component Object Model• EJB: Enterprise JavaBeans
LEPM
201
4 - I
I
29
Algoritmos distribuidos control
• Están por abajo de las aplicaciones• Proporcionan dos tipos de servicios
• Proveedor de primitivas• exclusión mutua• envío/recepción mensajes• control de concurrencia• administración de archivos
• Observadores de propiedades• interbloqueo• terminación de la ejecución• recolectores de basura
LEPM
201
4 - I
I
30
Algoritmos de aplicación y control
Medio de soporte de comunicaciones
A1
CTL1
A2
CTL2
Ai
CTLi
An
CTLn
.....
..... .....
....
.
CTLi :control de la i-ésima aplicaciónAi: aplicación
LEPM
201
4 - I
I
31
Características algoritmos distribuidos
• Desconocimiento del número de procesos• Desconocimiento de la topología de la red• Entradas independientes en sitios diferentes• Varias programas ejecutandose al mismo tiempo,
empezando en tiempos diferentes y operando a diferentes velocidades
• No determinismo en el procesador (processor nondeterminism)
• Tiempos entrega de mensajes diferentes• Orden entrega de mensajes desconocido• Fallas en la comunicación y en los procesos
LEPM
201
4 - I
I
32
Aplicaciones Algoritmos Distribuidos
• Redes de computadoras• Computadoras multiprocesadores• Redes inalámbricas - computación móvil
LEPM
201
4 - I
I
33
Problemas a Resolver en las WAN’s
Confiabilidad del intercambio de datosSelección de rutas de comunicaciónControl de tráficoPrevención de cuellos de botellaSeguridad LE
PM 2
014
- II
34
Problemas Comunes en LAN’s
Broadcasting y sincronizaciónDetección de terminaciónAsignación de recursosMantenimiento archivos distribuidos
LEPM
201
4 - I
I
35
Computadoras Multiprocesadores
Computadora que consiste de diferentes procesadores generalmente ubicados dentro de un mismo espacio físico
Procesadores homogéneosPequeña escala geográficaObjetivo principal:
mejorar la velocidad del cálculo
LEPM
201
4 - I
I
36
Los Algoritmos Distribuidos y
los Multiprocesadores
Implementación sistema envío de mensajesImplementación memoria virtual compartidaBalance de cargaTolerancia a fallas LE
PM 2
014
- II
37
Procesos CooperantesProcesos que interactuan para la solución de un
determinado problema, o para proporcionar un servicioComparten memoria en comúnTrabajan sobre el mismo procesadorEjemplo: sistemas operativos
LEPM
201
4 - I
I
38
Celdas de Manufactura
Robots conectados entre ellos a través de un medio de comunicación, cada uno desarrollando una actividad en particular, con un objetivo global en común
- ensamblaje- control de un determinado sistema
LEPM
201
4 - I
I
39
Computación MóvilWireless Local Area Networks o WLAN’s.Ausencia de cables como medio de comunicación.Envío/recepción de ondas electromagnéticas que viajan del emisor al
receptor a través del espacio.Computadoras desatadas (untethered o tetherless computer).Computadoras y aplicaciones móviles.
LEPM
201
4 - I
I
40
Problemas Resueltos por los Algoritmos Distribuidos• Ruteo• Información de la ubicación de la unidad móvil (almacenamiento y
actualización)• Consistencia• Seguridad• Transferencias de llamadas LE
PM 2
014
- II
41
Distribuyendo los datos
• La distribución puede tomar diversas formas:
• Duplicación
• Particionamiento LEPM
201
4 - I
I
43
La Duplicación de DatosExiste duplicación de un dato x, si este se encuentra duplicado en n ejemplares x1, x2 .... xn, donde 1,2, .... n son los identificadores de los sitios que participan en el algoritmo distribuido.
Asegurar la coherencia mutua de las copias a todo instantelas copias físicas xi tengan el mismo valor x
x1 = x2 = ...... xi ...... xn = x
LEPM
201
4 - I
I
44
Ejemplo de duplicación
x1
x2
x3
Pierre 500Sam 700Juan 900
Pierre 500Sam 700Juan 900
Pierre 500Sam 700Juan 900
LEPM
201
4 - I
I
45
Partición de Datos
Hablamos de particionamiento de datos cuando, estando accesibles desde todos los sitios, los datos son particionados de tal forma que cada una de las particiones se encuentra sobre un sitio dado
Para obtener la totalidad de la información se tieneque consultar a todo el mundo
I = (x1 + x2 + ... xi ... + xn)
LEPM
201
4 - I
I
46
Distribuyendo el Control
• No existe una jerarquía estática• No hay un proceso líder que en permanencia
asegure el control• Puede ser necesario un algoritmo de asignación de
funciones• Muy a menudo depende del problema que se
intenta resolver
LEPM
201
4 - I
I
48