Upload
stonekold5995
View
726
Download
2
Embed Size (px)
Citation preview
SISTEMAS DISTRIBUIDOS
SISTEMAS DISTRIBUIDOS
Definición: Es un conjunto de nodos de procesamientos que
se encuentran interconectados en un sistema de
comunicaciones con el objetivo de resolver una
tarea en común.
Nodos de Procesamientos
Sistema de Comunicaciones
• En el mundo de los negocios.
• TV por Internet.
• Mensajería.
• Aplicaciones de control para Procesos Industriales.
• E-learning.
• Trabajo colaborativo.
• Transmisión de imágenes en tiempo real.
• Telefonía Móvil.
• Entre otros.
APLICACIONES DE UN SISTEMA DISTRIBUIDO
CONCURRENCIA:
• Los usuarios compiten por los recursos de la red (archivos, web,
impresora,..) por lo que los programas deberá coordinarse para utilizarlos.
• También puede ocurrir que algunos pocos usuarios comparten grandes
cantidades de recursos (cluster, ancho de banda).
• El SD deberá considerar mecanismos que faciliten la concurrencia.
PROBLEMAS DE LOS SISTEMAS DISTRIBUIDOS
INEXISTENCIA DE UN RELOJ GLOBAL:
• Los procesos deben coordinar y colaborar mediante el envío de mensaje.
• Para ello, deben manejar un mecanismo que les permita saber en qué
secuencia están ocurriendo los eventos y en qué momento debieran
desencadenarse los nuevos eventos.
• El tiempo de un proceso no necesariamente coincide con el de los otros.
Para ello sería ideal coordinar los relojes con un único reloj (Reloj Global).
PROBLEMAS DE LOS SISTEMAS DISTRIBUIDOS
FALLAS INDEPENDIENTES
• Puede ocurrir que un proceso no reciba la respuesta que espera de
algún otro proceso.
¿Se cortó la comunicación o falló el otro proceso?
• Este tipo de sistemas debe identificar las posibles fallas y planificar
la forma de que el sistema se recupere de dicha falla.
PROBLEMAS DE LOS SISTEMAS DISTRIBUIDOS
Internet
• El protocolo de comunicación vía mensajes de las interredes
(TCP/IP…) permite que los procesos remotos se comuniquen y
colaboren.
• Servicios: correo, web, transferencia de archivos, entre otros.
• Los servicios pueden incrementarse, vía incorporar nuevos servidores
a la red.
EJEMPLOS DE SISTEMAS DISTRIBUIDOS
Internet
• El protocolo de comunicación vía mensajes de las interredes
(TCP/IP…) permite que los procesos remotos se comuniquen y
colaboren.
• Servicios: correo, web, transferencia de archivos, etc.
• Los servicios pueden incrementarse, vía incorporar nuevos servidores
a la red.
EJEMPLOS DE SISTEMAS DISTRIBUIDOS
Intranet
• Es una red que funciona administrativamente separada de la Internet.
• Funciona bajo una o varias LANs.
• Conectada a Internet vía un router.
• Un cortafuego (firewall) controla el tráfico de mensajes que llegan y
salen de la intranet.
• Requieren:
• Un mecanismo de compartición de archivos.
• Servicios complementarios de seguridad.
• Presupuesto para instalación y mantenimiento del sistema.
EJEMPLOS DE SISTEMAS DISTRIBUIDOS
En términos de diseño, un sistema distribuido debe poseer las siguientes
propiedades:
• Heterogeneidad.
• Extensibilidad.
• Seguridad.
• Escalabilidad.
• Tratamiento de Fallas.
• Concurrencia.
• Transparencia.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
Heterogeneidad
• Variados y diferentes componentes de la red dan soporte al SD.
• Redes.
• Hardware de Computadores.
• Sistemas Operativos.
• Lenguajes de Programación.
• Software.
• Dentro de Internet, estas componentes se comunican gracias al
protocolo Ethernet.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
• El sistema operativo tiene, entre otras, las siguientes funciones globales:
- Administración de la configuración y de los dispositivos periféricos.
- Administración de la comunicación.
- Funciones de administración propiamente tales.
• No existe un reloj para controlar el tiempo de transmisión de los
paquetes entre los nodos de procesamiento.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
• Cada nodo de procesamiento tiene su propio Sistema Operativo.
• Junto a las funciones locales del Sistema Operativo son necesarios además
otras funciones globales de control del sistema distribuido.
• El intercambio de información entre los nodos de procesamiento es a
través de paquetes.
Extensibilidad
• Involucra la idea que un sistema distribuido puede crecer en varios
aspectos.
• Agregación de nuevos servicios (funcionalidades).
• Modificación de los servicios existentes.
• Agregación de más máquinas.
• Es necesario contar con interfaces, que guarden estándares y sean
abiertos.
• TCP/IP
• CORBA
• Sistemas Distribuidos Abiertos.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
Seguridad
Resguardo de la Información.
• Confidencialidad (Acceso por parte de intrusos).
• Integridad (Alteración de los datos).
• Disponibilidad (Interferir el accesos).
Otros problemas de seguridad.
• Ataques o bombardeo de peticiones.
• Seguridad del código móvil.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
Escalabilidad
• Un sistema es escalable, si conserva su efectividad al incrementar los
recursos y el número de usuarios.
• Cuando un sistema crece en número de usuarios:
• Podría ser necesario aumentar el número de servidores.
• Cambiar de algoritmos.
• Desbordamiento de direccionamientos.
• Evitar cuellos de botellas.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
Tratamiento de Fallas
• Puede ocurrir falla de software o falla de hardware (fallas parcial o total).
• Deberá contarse con mecanismos para:
• Detección de Fallas.
• Enmascaramiento de Falla (reenvío de mensajes, duplicación de
archivos).
• Tolerancia a Falla (por parte del cliente).
• Recuperación ante fallas (en el servidor).
• Redundancia (mantener componentes redundantes).
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
Concurrencia
• Ocurre cuando varios usuarios intentan utilizar el mismo recurso.
• El recurso puede encapsularse en un objeto, quien recibirá y tratará
todas las peticiones por el recurso.
• Este objeto deberá garantizar que opera correctamente.
CARACTERISTICAS DE UN SISTEMA DISTRIBUIDO
Transparencia
• El usuario debe percibir el sistema distribuido como un único
sistema y no como una colección de componentes independientes.
• Transparencia de Acceso a los recursos locales y remotos.
• Transparencia de concurrencia.
• Transparencia frente a fallas.
• Transparencia de movilidad (de recurso y de usuarios).
• Transparencia de prestación según se incrementa la carga.
• Transparencia al escalado.
MODELO DE ARQUITECTURA DE UN SISTEMA
DISTRIBUIDO
La arquitectura de un Sistema Distribuido puede ser caracterizado a través delas siguientes propiedades:
• En la realización de una función del sistema participa mas de un proceso.
• La comunicación resulta mediante el intercambio de paquetes a través de unmedio de transmisión común.
• No existe un control central (sistema operativo) del sistema total. Elcontrol es distribuido en los nodos de procesamiento.
• No existen dos procesos (en diferentes nodos de procesamiento) quetengan el mismo estado global del sistema.
ARQUITECTURA DE UN SISTEMA DISTRIBUIDO
Un Sistema Distribuido se compone de dos componentes generales:
• Nodos de Procesamiento y
• Sistema de Comunicaciones para la transmisión de paquetes.
SISTEMA DE
COMUNICACION
NODO DE
PROCESAMIENTOINTERFAZ DEL SISTEMA
DE COMUNICACION
NODO DE PROCESAMIENTO DE UN
SISTEMA DISTRIBUIDO
• Los nodos de procesamiento se componen de por lo menos un par
de procesador-memoria.
• La estructura tanto de hardware y software pueden ser
homogéneos o heterogéneos.
• Para la realización de sus tareas especiales son autónomos.
• Cada nodo posee su propio Sistema Operativo. Ellos pueden ser
iguales o diferentes.
NODO DE PROCESAMIENTO DE UN
SISTEMA DISTRIBUIDO
• A pesar de su autonomía cada estación esta apresto para procesar
en cualquier instante una tarea proveniente de otro nodo, de
acuerdo al Principio de Cooperación.
• Cada nodo posee otros tipos de interfaces (seriales y paralelas)
para la interconexión de sus dispositivos periféricos o componentes
de automatización.
ESTRUCTURA DE CONEXION DE LOS SISTEMAS MULTIPROCESADORES
A) EJEMPLO DE ACOPLAMIENTO DE 2 PROCESADORES
O SOBRE CANALES DE ENTRADA/SALIDA SISTEMAS DEBILMENTE ACOPLADOS
O SOBRE UNA MEMORIA COMÚN SISTEMAS FUERTEMENTE ACOPLADOS
MEMORIA 1
PROCESADOR 1
CANALADAPTADOR DE CANAL
CANAL
MEMORIA
PORT-A PORT-B
BUS - A BUS - BPROC. 1
PROC. 2
MEMORIA 2
PROCESADOR 2
SISTEMAS DEBILMENTE Y FUERTEMENTE
ACOPLADOS
SISTEMA DE COMUNICACION PARA
SISTEMAS DISTRIBUIDOS
• Las tareas que debe realizar un Sistema de Comunicación entre otros son:
- Transmitir los paquetes libres de perturbaciones sistemáticas y aleatorias.
- Conectar y desconectar la comunicación, como asimismo regular el acceso
en el medio de transmisión.
- Elegir el camino de enrutamiento.
SISTEMA DE COMUNICACION PARA
SISTEMAS DISTRIBUIDOS
• Controlar el Flujo de Información.
• Detectar y/o recuperar errores durante la transmisión en el sistema de
comunicaciones.
• Desarrollar los protocolos de transmisión (reglas para la transformación y
transmisión de información).