2. Origen de los sistemas distribuidos • Hasta principios de los años 80: – Los computadores son máquinas costosas y de gran tamaño – Sistemas operativos multiusuario de tiempo compartido • A partir de los años 80: – Auge de los computadores personales (PCs). • Avances tecnológicos continuos • Bajo coste • Sistemas operativos monousuario – Aparición de las redes de computadores de alta velocidad • Redes de Área Local (LANs) • Redes de Área Extensa (WANs
4. Consecuencias: – Es fácil y tiene un coste asequible la construcción de un sistema distribuido, compuesto por varios computadores conectados por una red de comunicación de alta velocidad • Desde el punto de vista hardware – Construir un sistema distribuido no presenta grandes dificultades • El problema fundamental es el software – Es difícil hacer software para sacar partido a un sistema distribuido Origen de los sistemas distribuidos
5. Qué es un sistema distribuido • DEFINICIÓN 1.1: – Un Sistema Distribuido es una colección de computadores independientes que se presentan a los usuarios como un único sistema [Tanenbaum,
6. Qué es un sistema distribuido • – Un Sistema Distribuido es una colección de computadores interconectados a través de una red comunicación, de forma que cada computador tiene su propio procesador, memoria y periféricos,y las comunicaciones entre dos computadores diferentes se llevan a cabo mediante el paso de mensajes a través de la red [Sinha, 1997] – Un Sistema Distribuido es una colección de computadores heterogéneos interconectados a través de una red [Galli, 2000] – Un Sistema Distribuido es aquél en el que sus componentes, localizados en una red de computadores, se comunican y sincronizan entre sí mediante el intercambio de mensajes [Coulouris et at 2001]
7.
8.
9. INTRANETS Una intranet es una porción de Internet que es, administrada separadamente y que tiene un límite que puede ser configurado para hacer cumplir políticas de seguridad local. La Figura 1.2 muestra una intranet típica. Está compuesta de varias redes de área local (LANs) enlazadas por conexiones backbone. La configuración de red de una intranet particular es responsabilidad de la organización que la administra y puede variar ampliamente, desde una LAN en un único sitio a un conjunto de LANs conectadas perteneciendo a ramas de la empresa u otra organización en diferentes países. Una intranet está 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 electrónico. Permite también 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. Un cortafuegos se implementa filtrando los mensajes que entran o salen, por ejemplo de acuerdo con su origen o destino. Un cortafuegos podría permitir, por ejemplo, sólo aquellos mensajes relacionados con el correo electrónico o el acceso web para entrar o salir de la intranet que protege.
10.
11. Cuarto de control de Sistemas 10 Terminales UTP Fibra Óptica Fibra Óptica Fibra Óptica UTP 15 Terminales Novel Linux AS/400 NT – NT4 Server -- 2003 Server 50 Terminales 1 Raca 3 Racas 60 Terminales 2 Racas 30 Terminales 1Racas Oficina Administrativa 2 Racas 60 Terminales LP 70Terminales 70 Terminales MEXICO 2 Racas
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23. Transparencia • El principal objetivo de un SOD es que el sistema se presente a los usuarios como un único computador monoprocesador virtual Diversos conceptos de transparencia
24. Transparencia en un Sistema Distribuido Diferentes formas de transparencia en un sistema distribuido Que un recurso pueda estar en memoria o en disco Persistencia Permitir la recuperacion de un recurso en caso de fallas Fallas Que un recurso pueda ser compartido por varios usuarios Concurrencia Que puedan existir replicas de un recurso Replicacion Que un recurso pueda moverse de un lugar a otro mientras que esta en uso Relocalizacion Que un recurso pueda moverse de un lugar a otro Migracion Donde se encuentra un recurso Localizacion diferencias en la representacion de los datos y como accesar los recursos. Acceso Descripcion Transparencia
25. Seguridad • La seguridad es una característica fundamental en un SO multiusuario • En un sistema distribuido la información se transmite entre los diferentes nodos del mismo mediante paso de mensajes • Requisitos para garantizar la seguridad de los mensajes: – El emisor de un mensaje debería saber que su mensaje ha sido recibido – El receptor de un mensaje debería saber que ha sido enviado por el emisor adecuado – Tanto el emisor como el receptor deberían tener garantías de que los mensajes no son observados ni alterados durante la transmision.
26.
27. Rendimiento • La existencia de más recursos (procesadores y memoria) debería permitir que las aplicaciones se ejecuten más rápido en un sistema distribuido que en uno centralizado • Problemas: – Las aplicaciones tienen que ser paralelizadas (distribuidas) – Minimizar el tráfico en la red – Equilibrado de carga • Problema de compromiso: conseguir que un SOD sea transparente, flexible y fiable penaliza el rendimiento
28. Heterogeneidad • Un SOD heterogéneo se compone de conjuntos de computadores que pueden diferir tanto en aspectos hardware como software • Heterogeneidad implica que puede existir incompatibilidades – Los procesadores y los lenguajes de programación no usan la misma representación de los datos • Solución: utilizar formatos de datos comunes • Ejemplo: XDR (RPC de Sun), CDR (CORBA) – Diversidad de protocolos • Solución: Adopción de protocolos estándar Ejemplo: TCP/IP
29. Heterogeneidad • Se buscan soluciones de alto nivel para tratar la heterogeneidad •– Middleware es un software que reside entre la aplicación y los sistemas operativos, protocolos y hardware subyacente y cuyo objetivo es permitir que componentes heterogéneos y distribuidos se interconecten y colaboren entre si.
30. Flexibilidad • Un SO flexible admite la modificación de sus componentes y la adición de nuevos servicios – El factor que más influye es el diseño del núcleo del SO • Dos arquitecturas básicas – Núcleos monolíticos - Micronúcleos
31. Fiabilidad • Se supone que un SOD debe ser más fiable que un SO centralizado debido a la existencia de varios elementos de un mismo tipo – Sin embargo, al existir más elementos es más probable que falle alguno – Un sistema es tolerante a fallos cuando puede seguir funcionando aunque fallen algunos de sus componentes • Estrategias a seguir: – Diseño de servicios que no requieran el funcionamiento de un número elevado de componentes – Redundancia
32. Escalabilidad • Una de las ventajas de los sistemas distribuidos es que pueden crecer para adaptarse a incrementos de carga de Trabajo • Un sistema es escalable cuando puede crecer sin problemas – Sin embargo, añadir nuevos recursos • Puede generar una sobrecarga sobre otros recursos • Puede requerir modificaciones en el sistema que pueden ser costosas de realizar • Principio básico de diseño: – Evitar en lo posible utilizar componentes y algoritmos centralizados.
33. Problemas de Escalabilidad Limitaciones de la escalabilidad. Hacer el ruteo con algoritmos centralizados Algoritmos Centralizados Un unico enlace Datos Centralizados Un unico servidor para todos los usuarios Servicios Centralizados Ejemplo Concepto
35. Otras tecnicas de Escalamiento.. Usando Replicas : Estan pueden ser colocadas en algunos Servidores proximos al cliente. Usando Cache: Es traer una imagen del recurso tan cerca Del cliente como sea posible. Ambos casos traen problemas de consistencia
36.
37.
38.
39.
40.
41. Conceptos del Hardware Los Sistemas de computadores los podemos dividir en : Multiprocesadores: Aquellos que comparten memoria Multicomputadores: Aquellos que no
42. Clasificacion de acuerdo a su conexión: De acuerdo a la arquitectura de interconexion pueden clasificarse en: Bus:Por un solo cable se mueve el mensaje Switch: El mensaje se puede mover por un conjunto de Cables de los cuales se debe decidir el camino.
43. Conceptos del Hardware 1.6 Diferentes organizaciones de procesadores y memorias en sistemas de computadores distribuidos
44. Multiprocesadores Todos los procesadores tienen acceso directo a una memoria compartida. Los multiprocesadores bassados en bus consisten de un numero de CPUs conectados a un bus comun con un modulo de memoria. El problema con este modelo es que con unos cuantos CPUs el bus estara sobrecargado de trafico
45.
46.
47. Clasificacion en base a la arquitectura. Sistemas de Multicomputadores Homogeneos Construido de la misma tecnologia. . Procesadores iguales Memoria igual Usados en sistemas paralelos.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66. El montaje puede ser aplicado en diferentes lugares El problema que existe un SOR es el de no transparencia referente a la seguridad esto es es necesario un login y cuando se desea cambiar debera hacerse en la maquina servidor
67.
68.
69.
70.
71.
72. Servicios Middleware Existen muchos servicios que los sistemas de middleware ofrecen , tales como: Transparencia de acceso : ofreciendo facilidades de comunicación a traves de las redes de computadores. Llamado : La forma de organizar los nombres de algun recurso permitira compartirse un ejemplo de esto es la web en donde los documentos son llamados por el significado de un URL el cual mantiene el nombre del servidor donde el documento se encuentra. Persistencia : Esta alcanzada por medio de un sistema de archivos distribuidos o base de datos proviendo de facilidades a las aplicaciones para conectarse a estas. Generalmente ofrecidas por transacciones distribuidas permitiendo que varias operaciones de lectura / escritura sean atomicas (se deben realizar todas para que surta efecto en los datos sobre los cuales las operaciones trabajan) considerando que los datos pudieran estar disperso en el sistema. Seguridad:
73. Comparacion de sistemas distribuidos basados en Sistemas Operativos de multiprocesadores, multicomputadores. De red y middleware. abierto abierto cerrado Cerrado Apertura varios si Moderado No Scalability Por nodo Por nodo Global, Distribuido Global, central Admon. De recursos Modelo Archivos Mensajes Memoria compartida Bases para la comunic. N N N 1 Numero de copias No No si si Mismo S.O. alto bajo Alto Muy alto Grado de transparencia Multicomp. Multiproc. Middleware-based OS Network OS Distributed OS Item
74.
75. La comunicación entre un cliente y un servidor puede implemente por medio de los protocolos de red. Simplemente el cliente empaca el mensaje con el servicio solicitado para el servidor. El servidor procesa la solicitud y empaca un mensaje con el resultado para el cliente.
76.
77.
78.
79. Modelo Cliente Servidor Una aplicación cliente servidor esta compuesta de tres niveles. Nivel Interfase de Usuario Nivel de Procesamiento Nivel de datos Capas de una aplicacion
80.
81.
82. Arquitectura cliente servidor Arquitectura de Multicapas La idea basica de un modelo cliente servidor consiste de tener : Una maquina cliente que contenga la interfase del usuario . Una maquina servidor que contenga el nivel de procesamiento y el nivel de datos. A esto se le considera modelo de arquitectura de 2 capas.