Sei sulla pagina 1di 48

UNIVERSIDAD PERUANA LOS ANDES

FACULTAD DE INGENIERA

FTHM 2015 - I

CARRERA PROFESIONAL DE INGENIERIA DE


SISTEMAS Y COMPUTACION

SISTEMAS DISTRIBUIDOS
INTRODUCCIN A LOS SISTEMAS DISTRIBUIDOS
1

Mg. Freddy Toribio Huayta Meza

Desarrollo de microprocesadores
De una mquina de 10 millones de dlares que
ejecuta una instruccin por minuto, se pasa a
mquinas de 1000 dlares que ejecutan 10
millones de instrucciones por seg..

FTHM 2015 - I

Antecedente
s tecnolgicos en los 80s
Dos grandes avances

Invencin de redes
Posibilidad de conectar uno o ms computadoras
entre s
Roll Royce de 100 dlares con un billn de kilmetros por litro
Tamao manual para abrir puerta: 200 pgs.

Redes de comunicacin: Permiten


conectar decenas, centenas y todas las
mquinas que se requieran (Internet).
Sistemas Operativos distribuidos que
permitan cooperar y multiplicar la
potencia del clculo.

FTHM 2015 - I

Introduccin

Desarrollos conceptuales
Ciclos

Ideas
clave

experiencia

1970s
requerimientos

Tiempo
Compartido

Grficas

Instituciones
pilares

experiencia
Estaciones de
trabajo

Computadoras
como
herramientas
personales

Cliente/Servidor

requerimientos

Sistemas
abiertos,
escalables,
tolerantes
a fallas

Redes Locales

Redes
MIT CTSS
Cambridge TSS
Tenex, Unix
Sketchpad
ARPANET

1980s

FTHM 2015 - I

1960s

Xerox Alto
Lisp machine
Apple II
Smalltalk
Aloha net

Xerox Dorado
Sun 1, Apollo Domain
Xerox: DFS, Grapevine
Berkeley Unix
Newcastle Connection
Cambridge DCS
Ethernet, Cambridge Ring

Sistema V - Stanford
Sun NFS
MIT: X-11, Argus
CMU: Accent, Andrew
Mach
Amoeba
Chrous

Sistemas Distribuidos

El hardware : mquinas autnomas, es decir, que


puedan operar sin la supervisin de ninguna otra.
El software : Debe conseguir que los usuarios del
sistema lo vean como una mquina central
convencional nica

FTHM 2015 - I

Conjunto
de
computadoras
independientes que se presenta a los
usuarios como un sistema nico.
Aspectos

Conjunto
de
entidades
que
se
comunican entre ellos a travs de
mensajes, los cuales son enviados
sobre vas de comunicacin.
Entidades:
Procesos, computadoras, redes
computadoras,
dispositivos,
procesadores etc..

FTHM 2015 - I

Sistemas Distribuidos

Elementos de Sistemas
Distribuidos

(2) Vas de comunicacin


medio sobre el cual circulan los datos y que
forman una red local dotado de propiedades
estructurales y dinmicas.

FTHM 2015 - I

(1) Procesos
reciben, manipulan, transforman y emiten datos

Los procesos

- En sistemas distribuidos,
unidad de ejecucin elemental
de un algoritmo distribuido o paralelo; diversas de esas
unidades pueden ejecutarse simultneamente, y cada una
es indivisible.

FTHM 2015 - I

- Trmino introducido por Dijkstra en 1968 para modelar las


relaciones entre diferentes unidades de ejecucin
independientes que deben compartir recursos comunes,
(materiales y lgicos)

Las Vas de
a travs del cual viajan los mensajes
Medio
Comunicacin
virtuales

Propiedades:

FTHM 2015 - I

Sistema distribuido: vas de comunicacin

1. Propiedades estructurales
2. Propiedades comportamentales
9

Propiedades
Estructurales
de naturaleza topolgica
Son

tratado y el algoritmo distribuido que lo


resuelve.
Estructuras ms comunes:
1. Anillo
2. Estrella
3. rbol

FTHM 2015 - I

Se refiere a las mallas de comunicacin


Toda topologa es posible segn el problema

10

1. Transmisin se hace sin duplicacin de mensajes


2. Transmisin sin alteracin de mensajes
3. Entre dos procesos el orden de recepcin de mensajes es
idntico a su orden de emisin: no hay desplazamientos
4. Tiempo de espera de un mensaje es finito, (aunque aleatorio), (no
hay perdida de mensajes).
5. Tiempo atencin limitado => existe una cota superior si no hay
perdida de mensaje mensaje fue recibido en caso contrario mensaje
recibido o perdido

FTHM 2015 - I

Propiedades
Hiptesis sobre comportamiento de las vas de comunicacin.
Comportamentales

11

Uso de un sistema de comunicacin.


Ausencia de memoria comn.
Sincronizacin del trabajo.
Ausencia de un estado global
perceptible por un observador.
Comunicacin a travs de mensajes.

FTHM 2015 - I

Caractersticas de los
sistemas distribuidos

12

Sistema distribuido que puede seguir


funcionando, (tal vez con un menor
desempeo), a pesar de que uno de
sus componentes no este funcionando
(sistemas robustos).
Redundancia de hardware
Recuperacin de software

FTHM 2015 - I

Tolerancia a fallas

13

Datos transmitidos a travs de vas de


comunicacin
Posibilidad de prdida y modificacin
de datos (Capacidades de recuperacin
de datos)

FTHM 2015 - I

Confiabilidad

14

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 estacin
si la que usa falla, o un servidor puede
reinicializarse en otra computadora.

FTHM 2015 - I

Disponibilidad

15

Sistemas abiertos distribuidos proporcionan


un mecanismo de comunicacin de procesos
uniforme y publican interfaces para el acceso
a recursos compartidos.
Pueden ser construidos a partir de software y
hardware heterogeneo.

FTHM 2015 - I

Apertura del sistema

16

Varios procesos se encuentran sobre


una sola computadora.
Ejecucin intercalada en el caso de un
solo procesador y simultanea si existen
n procesadores.
Ejecucin paralela posible debido a:
Varios usuarios invocan comandos o
interactuan con programas de aplicacin.
Varios procesos servidores se corren
concurrentemente.

FTHM 2015 - I

Concurrencia

17

Sistemas distribuidos deben operar


efectiva y eficientemente en diferentes
escalas.
Sistema distribuido prctico ms chico:
dos estaciones y un servidor de
archivos.
Sistemas distribuidos grandes

FTHM 2015 - I

Escalabilidad

18

Ventajas
- Relativamente fcil y econmico poner en

- Dos entidades trabajan ms rpido que una sola.


- Necesidad de sincronizar los trabajos de cada
componente

FTHM 2015 - I

conjunto sistemas compuestos de un gran nmero


de procesadores, (CPUs), conectados en red.

19

Limitaciones geogrficas
Seguridad (En un sistema centralizado
existe un nico punto de fallo)
Aumento constante de Potencia de
cmputo : Si la potencia del sistema
llega a ser insuficiente (Adquirir un
nuevo equipo MainFrame vs Adquirir
computadoras personales)

FTHM 2015 - I

Objetivos

20

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).

FTHM 2015 - I

Aspectos clave en el Diseo


de los Sistemas Operativos
Distribuidos

21

Estructura software
Asignacin de carga
Consistencia

FTHM 2015 - I

Aspectos Bsicos de
Diseo de Sistemas
Naming
Distribuidos
Comunicacin

22

Nombramiento de los diferentes recursos


Nombres deben de tener significados globales
Involucra las siguientes consideraciones:
La eleccin del tamao del nombre para
cada tipo de recurso, (puede ser finito o
potencialmente infinitio)
Nombres deben de ser mapeados por
identificadores de comunicacin
Un nombre depende de su contexto, por lo
que para resolver un nombre es necesario el
nombre y un contexto

FTHM 2015 - I

Naming

23

Componentes separados lgica y fsicamente,


por lo que necesitan comunicarse entre ellos
para interactuar
Comunicacin involucra las operaciones
siguientes:
la transferencia de datos
la sincronizacin de la recepcin con la emisin

Dos enfoques en sistemas distribuidos:

FTHM 2015 - I

Comunicacin

paso de mensajes
llamado de procedimiento remoto

Existen dos modelos:


modelo de comunicacin par a par
modelo de comunicacin grupal

24

Sistemas centralizados son monolticos:


conjunto abstracciones que se ofrece a las
aplicaciones estan reunidas en una sola interfaz
Sistemas distribuidos
programas aplicacin pueden accesar
diferentes servicios , en el cual cada uno cuenta
con su propia interfaz para accesar recursos
Principales niveles
aplicaciones
soporte de lenguaje de programacin
sistema operativo
hardware

FTHM 2015 - I

Estructura software

25

Dado un proceso, en donde se va a ejecutar


Modelo simple la capacidad de memoria y el
desempeo de un procesador de una estacin
determina el tamao mximo de tarea que se puede
ejecutar
Modelos
modelo de servidor de estacin
modelo de piscina de procesadores
modelo de la estacin de trabajo
modelo de memoria compartida distribuida

FTHM 2015 - I

Asignacin carga

26

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
consistencia
consistencia
consistencia
consistencia
consistencia

de
de
de
de
de
de

actualizacin
replica
cach
fallas
reloj
interfaz de usuario

FTHM 2015 - I

Consistencia

27

Definicin: abstraccin lgica de un sistema


distribuido, se habla de un conjunto de procesos
y de lneas de comunicacin virtuales
Se habla de algoritmos concurrentes ejecutados
en diferentes procesadores,
Originalmente los algoritmos eran diseados
para ejecutarse procesadores distribuidos en un
rea grande
Hoy en da incluye algoritmos usados en redes
de rea local y multiprocesadores que comparten
memoria

FTHM 2015 - I

Algoritmos
Distribuidos

28

Son los algoritmos que definen una aplicacin


Representan la interfaz final entre los usuarios
y el sistema distribuido
Se apoyan en arquitecturas de software
como:
CORBA:
Common
Object
Architecture
COM: Component Object Model
EJB: Enterprise JavaBeans

Request

Broker

FTHM 2015 - I

Algoritmos distribuidos
aplicacin

29

Algoritmos distribuidos
control
Estn por abajo de las aplicaciones
Proporcionan dos tipos de servicios

exclusin mutua
envo/recepcin mensajes
control de concurrencia
administracin de archivos

FTHM 2015 - I

Proveedor de primitivas

Observadores de propiedades
interbloqueo
terminacin de la ejecucin
recolectores de basura

30

Algoritmos de aplicacin y
control
A2

.....

Ai

CTL1

CTL2

.....

CTLi

....
.
....
.

An

CTLn

FTHM 2015 - I

A1

Medio de soporte de comunicaciones

CTLi :control de la i-sima aplicacin


Ai: aplicacin

31

Caractersticas algoritmos
distribuidos

FTHM 2015 - I

Desconocimiento del nmero de procesos


Desconocimiento de la topologa 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 32
Fallas en la comunicacin y en los procesos

Redes de computadoras
Computadoras multiprocesadores
Redes inalmbricas computacin mvil

FTHM 2015 - I

Aplicaciones Algoritmos
Distribuidos

33

Confiabilidad del intercambio de datos


Seleccin de rutas de comunicacin
Control de trfico
Prevencin de cuellos de botella
Seguridad

FTHM 2015 - I

Problemas a Resolver en
las WANs

34

Broadcasting y sincronizacin
Deteccin de terminacin
Asignacin de recursos
Mantenimiento archivos
distribuidos

FTHM 2015 - I

Problemas Comunes
en LANs

35

Computadora que consiste de diferentes


procesadores generalmente ubicados dentro
de un mismo espacio fsico
Procesadores homogneos
Pequea escala geogrfica
Objetivo principal:
mejorar la velocidad del clculo

FTHM 2015 - I

Computadoras
Multiprocesadores

36

Implementacin sistema envo de mensajes


Implementacin memoria virtual compartida
Balance de carga
Tolerancia a fallas

FTHM 2015 - I

Los Algoritmos
Distribuidos y
los Multiprocesadores

37

Procesos que interactuan para la solucin de


un determinado problema, o para
proporcionar un servicio
Comparten memoria en comn
Trabajan sobre el mismo procesador
Ejemplo: sistemas operativos

FTHM 2015 - I

Procesos Cooperantes

38

Celdas
Manufactura

de

- ensamblaje
- control de un determinado sistema

FTHM 2015 - I

Robots conectados entre ellos a travs de un medio de


comunicacin, cada uno desarrollando una actividad en
particular, con un objetivo global en comn

39

Wireless Local Area Networks o WLANs.


Ausencia de cables como medio de comunicacin.
Envo/recepcin de ondas electromagnticas que viajan del
emisor al receptor a travs del espacio.
Computadoras desatadas (untethered o tetherless computer).
Computadoras y aplicaciones mviles.

FTHM 2015 - I

Computacin Mvil

40

Consistencia
Seguridad
Transferencias de llamadas

FTHM 2015 - I

Problemas Resueltos
por los
Algoritmos
Ruteo
Informacin de la ubicacin de la unidad mvil
(almacenamiento y actualizacin)
Distribuidos

41

Algoritmos
distribuidos?

Datos

FTHM 2015 - I

Qu distribuir?

Control

42

Distribuyendo los
datos
La distribucin puede tomar diversas formas:

Particionamiento

FTHM 2015 - I

Duplicacin

43

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 fsicas xi tengan el
mismo valor x
x1 = x2 = ...... xi ...... xn = x

FTHM 2015 - I

La Duplicacin de
Datos
Existe duplicacin de un dato x, si este se

44

Ejemplo de
duplicacin
Pierre 500
Sam 700
Juan 900

x2

x1

FTHM 2015 - I

Pierre 500
Sam 700
Juan 900

Pierre 500
Sam 700
Juan 900

x3

45

Particin de
Datos
Hablamos de particionamiento de datos

Para obtener la totalidad de la informacin se tiene


que consultar a todo el mundo
I = (x1 + x2 + ... xi ... + xn)

FTHM 2015 - I

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

46

Ejemplo de Particin

x2

x1

FTHM 2015 - I

Sam 500

Pierre 500

Juan 900

x3

47

No existe una jerarqua esttica


No hay un proceso lder que en
permanencia asegure el control
Puede ser necesario un algoritmo de
asignacin de funciones
Muy a menudo depende del problema que
se intenta resolver

FTHM 2015 - I

Distribuyendo el Control

48

Potrebbero piacerti anche