Sunteți pe pagina 1din 37

SISTEMAS DISTRIBUIDOS

Existen redes de dispositivos en cualquier parte.



Las redes de telfonos mviles
Las redes corporativas
Hogares y Pequeas Oficinas
Redes personales

Todas, tanto separadas como combinadas, comparten las
caractersticas esenciales que las hacen elementos
importantes para su estudio bajo el titulo de Sistemas
Distribuidos.

INTRODUCCION
QU ES UN SISTEMA?

Un sistema es un conjunto de partes o elementos organizadas y
relacionadas que interactan entre s para lograr un objetivo.

Un sistema puede ser fsico o concreto (una computadora,
un televisor, un humano) o puede ser abstracto o conceptual
(un software)

Cada sistema existe dentro de otro ms grande, por
lo tanto un sistema puede estar formado por subsistemas
y partes, y a la vez puede ser parte de un supersistema.

Un grupo de elementos no constituye un sistema si no hay
una relacin e interaccin, que de la idea de un "todo" con
un propsito.
Definicin Sistema Distribuido:
Un sistema distribuido se define como una coleccin de
computadores autnomos conectados por una red, y con el
software distribuido adecuado para que el sistema sea visto
por los usuarios como una nica entidad capaz de
proporcionar facilidades de computacin. [ Colouris 1994 ]

Definicin Sistema Distribuido:
La definicin de SD tiene las siguientes consecuencias
significativas:

Concurrencia.- En una red de computadores, la ejecucin de
programas concurrentes es la norma.

La capacidad del sistema para manejar recursos
compartidos se puede incrementar aadiendo ms recursos.



Yo puedo realizar mi trabajo en mi
computadora, mientras t realizas tu
trabajo en la tuya, compartiendo
recursos como pginas web o ficheros.

Inexistencia de reloj global.- Cuando los programas
necesitan cooperar coordinan sus acciones mediante el
intercambio de mensajes.

La coordinacin estrecha depende a menudo de una idea
compartida del instante en el que ocurren las acciones de los
programas.

Pero resulta que hay lmites a la precisin con lo que los
computadores en una red pueden sincronizar sus relojes, no
hay una nica nocin global del tiempo correcto.


Fallos independientes.-

Todos los sistemas informticos pueden fallar y los
diseadores de sistemas tienen la responsabilidad de
planificar las consecuencias de posibles fallos.

Los fallos en la red producen el aislamiento de los
computadores conectados a l, pero eso no significa que
detengan su ejecucin. De hecho los programas que se
ejecutan en ellos pueden no ser capaces de detectar
cuando la red ha fallado o esta excesivamente lenta.

De forma similar, la parada de un computador o la
terminacin inesperada de un programa en alguna parte
del sistema (crash) no se da ha conocer inmediatamente
a los dems componentes con los que se comunica.

Cada componente del sistema puede fallar
independientemente, permitiendo que los dems
continen su ejecucin


La motivacin para construir
y utilizar sistemas
distribuidos tiene su
origen en un deseo de
compartir recursos.

Recurso.- El termino es un
poco abstracto, cosa que
puede ser compartida de
forma til en un sistema
de computadoras
conectados en red.

Componente Hw: impresora,
discos
Sw: ficheros, Base de Datos
INTERNET

Vasta coleccin de redes de computadoras de diferentes tipos
interconectados. Programas ejecutndose en los computadores
conectados a ella interactan mediante paso de mensaje,
empleando un medio comn de comunicacin.

Es un sistema distribuido muy grande. Permite a los usuarios,
donde quiera que estn, hacer uso de servicios como: World
Wide Web, el correo electrnico, y la transferencia de ficheros.

El conjunto de servicios es abierto, puede ser extendido por la
adicin de servidores y nuevos tipos de servicios.

EJEMPLOS DE SISTEMAS
DISTRIBUIDOS
Es una porcin de Internet que es, administrada separadamente y que
tiene un limite que puede ser configurado para hacer cumplir polticas de
seguridad local.

Una intranet esta conectada a Internet por medio de un encaminador
(router) lo que permite a los usuarios hacer uso de servicios de otro sitio
como el Web o el correo electrnico.

Permite tambin acceder a los servicios que ella proporciona a los usuarios
de otras intranets.

El papel del cortafuegos es proteger una intranet impidiendo que entren o
salgan mensajes no autorizados, filtrando los mensajes que entran o salen,
por ejemplo de acuerdo con su origen o destino. (Complementado con el
uso de mecanismos de seguridad ms refinados)

La solucin que se adopta en tales organizaciones es realizar una intranet
como se ha indicado, pero sin conexiones a Internet. (Polica, agencia de
seguridad, servicio de salud, organizaciones militares.)

INTRANETS.-
Los avances tecnolgicos en la miniaturizacin de dispositivos y en redes inalmbricas
han llevado cada vez ms a la integracin de dispositivos de computacin pequeos
y porttiles en sistemas distribuidos. Estos dispositivos incluyen:

Computadores porttiles.

Dispositivos de mano (handheld): PDA (Asistente Digital Personal), telfonos mviles,
cmaras digitales.

Dispositivos que se pueden llevar puestos, como relojes inteligentes con funcionalidad
semejante a la de los PDAs.

Dispositivos insertados en aparatos, como lavadoras, coches y frigorficos.


La facilidad de transporte de muchos de estos dispositivos, junto con
su capacidad para conectarse adecuadamente a redes en diferentes
lugares, hace posible la computacin mvil.


COMPUTACIN MOVIL Y UBICUA
Computacin nmada

Realizacin de tareas de cmputo mientras el usuario est
en movimiento o visitando otros lugares distintos de su
entorno habitual.

Los usuarios que estn fuera de su hogar intranet (trabajo -
casa) disponen de la posibilidad de acceder a los recursos
mediante los dispositivos que llevan con ellos.
Computacin Mvil.-
Utilizacin de muchos
dispositivos de computacin
pequeos y baratos que estn
presentes en los entornos
fsicos de los usuarios: casa,
oficina y otros.

Ubicuo: esta pensado para
sugerir que los pequeos
dispositivos llegarn a estar
tan extendidos en los objetos
de cada da que apenas nos
daremos cuenta de ellos.
Computacin ubicua
La presencia de computadores en cualquier
parte slo ser til cuando se puedan
comunicar entre s.

Ejemplo: Controlar lavadora y equipo desde un
dispositivo de control remoto universal en su
casa, del mismo modo la lavadora podra
avisar al usuario a travs de una tarjeta
inteligente o reloj cuando el lavado hubiera
finalizado.



Los usuarios acostumbrados a los
beneficios de compartir recursos que
pueden pasar por alto sus significado.

Compartimos recursos:
Hw: impresoras, discos (para reducir
costes)
Datos: (recursos de alto nivel) ficheros,
Base de Datos compartida
Con una funcionalidad ms especfica:
mquinas de bsqueda o un conversor
de monedas

RECURSOS COMPARTIDOS Y WEB
GROUPWARE
El patrn de compartir y la distribucin
geogrfica de los usuarios particulares
determina que mecanismos debe proporcionar
el sistema para coordinar sus acciones.
Gestiona una coleccin de recursos relacionados y presenta su
funcionalidad a los usuarios y aplicaciones
Ejemplos:
Servicio de ficheros: accedemos a ficheros compartidos
Servicio de impresin: enviamos documentos a las impresoras.
Servicio de pago electrnico: compramos regalos, libros
Servicio
El nico acceso que tenemos al servicio es mediante un conjunto de
operaciones que el ofrece, entonces los servicios limitan el acceso a los
recursos.

Los recursos en un sistema distribuido estn encapsulados fsicamente en
los computadores y solo pueden ser accedidos desde otros computadores a
travs de comunicacin.

Cada recurso debe ser gestionado por un programa que ofrece una interfaz
de comunicacin permitiendo que se acceda y actualice el recurso de forma
fiable y consistente.
Programa en ejecucin (un proceso) en un computador en red que acepta
peticiones de programas que se estn ejecutando en otros computadores
para realizar un servicio y responder adecuadamente.
Servidor
Procesos solicitantes
Cliente
Las peticiones se envan a travs de mensajes desde el Cliente al Servidor
Las contestaciones se envan mediante mensajes desde el servidor a los
cliente.
Mensajes
Interaccin completa entre un cliente y un servidor, desde el instante en el
que el cliente enva su peticin hasta que recibe la respuesta del servidor.
Invocacin
remota
Los ejemplos mencionados pretenden ilustrar:
El alcance de los sistemas distribuidos y
Sugerir las cuestiones que aparecen en su diseo.

Los desafos que se discuten a continuacin estn ya resueltos,
pero los futuros diseadores necesitan estar al tanto y tener
cuidado de considerarlos.
DESAFIOS
La construccin de los sistemas distribuidos presenta muchos
desafos:

Heterogeneidad
Extensibilidad
Seguridad
Escalabilidad
Tratamiento de fallos
Concurrencia
Transparencia
Internet permite que los usuarios accedan a servicios y ejecuten
aplicaciones sobre un conjunto heterogneo de redes y computadores.

Esta heterogeneidad se aplica a todos los siguientes elementos:
Variedad de diferentes redes (diferencias se encuentran enmascaradas dado que todos los
computadores conectados utilizan los protocolos de Internet para comunicarse una con otra)
Hw de computadoras (Los tipos de datos pueden representarse de diferente forma en diferentes
clases de Hw.)
Sistemas operativos.
Lenguajes de programacin (programas escritos en diferentes lenguajes de programacin sean capaces de
comunicarse entre ellos)
Implementacin de diferente s desarrolladores (programas escritos por diferentes
programadores no podrn comunicarse entre s a menos que utilicen estndares comunes.)
HETEROGENEIDAD (Variedad y Diferencia)
EXTENSIBILIDAD (Aadir y Quitar)
Caracterstica que determina si el sistema puede ser extendido y
reimplementado.

Se determina por el grado en el cual se pueden aadir nuevos servicios
de comparticin de recursos y ponerlos a disposicin para el uso por
una variedad de programas cliente.

No es posible obtener extensibilidad a menos que la especificacin y la
documentacin de las interfaces software clave de los componentes de
un sistema estn disponibles para los desarrolladores de software.

La integracin de componentes escritos por diferentes
programadores es un autentico reto. Sistemas Distribuidos Abiertos

La seguridad de los recursos de
informacin: tiene tres componentes:
Confidencialidad: Proteccin contra el
descubrimiento por individuos no autorizados
Integridad: Proteccin contra la alteracin o
corrupcin
Disponibilidad: Proteccin contra interferencia
con los procedimientos de acceso a los recursos.
SEGURIDAD
Un medico puede solicitar acceso a los datos hospitalarios
de un paciente o enviar modificaciones sobre ellos.
En comercio electrnico y banca, los usuarios envan su
nmero de tarjeta de crdito a travs de Internet.

Reto 1: Enviar informacin sensible en un mensaje por la red
de forma segura.

Pero la seguridad no slo es cuestin de ocultar los
contenidos de los mensajes, tambin consiste en conocer
con certeza la identidad del usuario del cual se enva el
mensaje.



Reto 2: Identificar un usuario remoto u otro agente
correctamente



Ambos desafos pueden lograrse a travs de
tcnicas de encriptacin desarrolladas al
efecto.
Sin embargo, an existen dos desafos de seguridad que no
han sido asistidos completamente:

1. Ataques de denegacin de servicio:
2. Seguridad del cdigo mvil

1. Ocurre cuando un usuario desea obstaculizar un servicio
por alguna razn. Esto se obtiene al bombardear el
servicio con un nmero suficiente de peticiones intiles
de modo que los usuarios sean incapaces de utilizarlo.

2. Suponga que alguien recibe un programa ejecutable
adherido a un correo electrnico.






Se dice que un sistema es escalable si
conserva su efectividad cuando ocurre
un incremento significativo en el
nmero de recursos y el nmero de
usuarios.
El sistema debe ser capaz de admitir
ms recursos y clientes sin cambiar el
modelo
Para que un sistema sea escalable debe
ser extensible

Internet es un sistema distribuido en el
que el nmero de computadoras y
servicios experimenta un dramtico
incremento.


ESCALABILIDAD
Mapa parcial de Internet basado en la informacin
obtenida del sitio opte.org en 2005.
Los sistemas computacionales a veces fallan. Fallos de Hw o
Sw (Los programas pueden producir resultados incorrectos o pudieran parar
antes de haber completado el clculo pedido.)
Los fallos en un sistema distribuido son parciales.
Algunos componentes fallan mientras otros siguen funcionando.

Tcnicas para tratar fallos.
Deteccin de fallos
Enmascaramiento de fallos
Tolerancia de Fallos
Recuperacin frente a fallos
Redundancia


Tratamiento de Fallos
Sus interfaces estn publicadas.

Se basan en la providencia de un mecanismo de
comunicacin uniforme e interfaces pblicas para
acceder a recursos compartidos

Pueden construirse con Hw y Sw heterogneo
posiblemente de diferentes proveedores.
Sistemas distribuidos abiertos:
Algunos fallos son detectables. Por ejemplo: para detectar
datos corruptos en un mensaje o un archivo se puede
utilizar checksums (sumas de comprobacin).

Es difcil o incluso imposible detectar algunos otros fallos
como la cada de un servidor remoto en Internet.

Deteccin de Fallos
Algunos fallos que han sido detectados pueden ocultarse o
atenuarse.
Ejemplos de ocultacin de fallos
Los mensajes pueden retransmitirse cuando falla la recepcin.
Los archivos con datos pueden escribirse en una pareja de discos
de forma que si uno est deteriorado el otro seguramente est en
buen estado.
Ejemplo de atenuacin de fallos
Eliminar un mensaje corrupto
Enmascaramiento de fallos
La mayora de los servicios de internet exhiben fallos; es
posible que no sea prctico para ellos pretender detectar y
ocultar todos los fallos que pudieran aparecer en una red
tan grande y con tantos componentes. Sus clientes pueden
disearse para tolerar ciertos fallos, lo que implica que
tambin los usuarios tendrn que tolerarlos generalmente
Ej: cuando un visualizador web no puede contactar con un
servidor web no har que el cliente tenga que esperar
indefinidamente mientras hace sucesivos intentos; informar al
usuario del problema, dndole la libertad de intentarlo ms
tarde.
Tolerancia de Fallos
Implica el diseo de software en el que, tras una
cada del servidor , el estado de los datos puede
reponerse o retractarse (roll back) a una situacin
anterior.
Ejemplo: los clculos realizados por algunos
programas se encontraran incompletos y al
actualizar datos permanentes pudiera encontrarse
en un estado inconsistente.

Recuperacin frente a fallos
Puede lograrse que los servicios toleren fallos mediante el
empleo redundante de componentes.
Siempre deber haber al menos dos rutas diferentes
entre cualesquiera dos routers de internet.
En el Sistema de Nombres de Dominio, cada tabla de
nombres se encuentra replicada en dos servidores
diferentes.
Una base de datos puede encontrarse replicada en varios
servidores para asegurar que los datos siguen siendo
accesibles tras el fallos de cualquier servidor concreto.
Redundancia
Varios clientes intenten acceder a un recurso compartido a la vez.

El proceso que administra un recurso compartido puede atender las
peticiones de cliente una por una, pero esta aproximacin limita el ritmo
de produccin del sistema. Por esto los servicios y aplicaciones permiten
usualmente procesar concurrentemente mltiples peticiones de los
cliente.
Cada objeto que represente un recurso compartido en un SD debe
responsabilizarse de garantizar que opera correctamente en un entorno
concurrente.
Para que un objeto sea seguro en un entorno concurrente, sus
operaciones deben sincronizarse de forma que sus datos permanezcan
consistentes.

CONCURRENCIA
Ocultacin al usuario y al Programador de Aplicaciones de la
separacin de los componentes en un SD de forma que se
perciba el sistema como un todo ms que como una
coleccin de componentes independientes.

El objetivo es que ciertos aspectos de la distribucin sean
invisibles de modo que slo necesite ocuparse del diseo de
su aplicacin particular. Por ejemplo, no debe ocuparse de
su ubicacin o los detalles sobre cmo se accede a sus
operaciones por otros componente, o si ser replicado o
migrado.


TRANSPARENCIA

S-ar putea să vă placă și