Sistemas Distribuidos a los Sistemas Distribuidos Lima, enero 2009 Ing Roberto Montero Flores pcsirmon@upc.edu.pe Pag. 1
AGENDA A) Definiciones B) Utilización Internet Intranet Computación n móvilm C) Desafíos D) Estado Actual E) Entorno Integrado de Desarrollo - IDE Pag. 2
A. Definiciones Se define un sistema distribuido como aquel en el que cada uno de sus componentes de HW y SW, localizados en computadores que están unidos mediante una red, se comunican y coordinan sus acciones mediante el envío de mensajes. Pag. 3
A. Definiciones CARACTERISTICAS Concurrencia Esta característica de los sistemas distribuidos permite que los recursos disponibles en la red puedan ser utilizados simultáneamente por los usuarios y/o agentes que interactúan en la red. Inexistencia de reloj global Las coordinaciones para la transferencia de mensajes entre los diferentes componentes para la realización de una tarea, no tienen una temporización general, esta más bien distribuida a los componentes. Fallos independientes Cada componente del sistema puede fallar independientemente, con lo cual los demás pueden continuar ejecutando sus acciones. Esto permite el logro de las tareas con mayor efectividad, pues el sistema en su conjunto continua trabajando. Pag. 4
A. Definiciones UTILIZACIÒN Internet Intranet Computación móvil Cliente/Servidor es el principio básico de los sistemas distribuidos Pag. 5
B. Utilizaciòn INTERNET Características: Publicación de datos libres. Computadores de diferentes tipos. Interactúan mediante el paso de mensajes. Comunicación en cualquier parte. Pag. 6
B. Utilizaciòn INTERNET % ISP intranet % % % backbone satellite link desktop computer: server: network link: Pag. 7
B. Utilización INTRANET Características: Es una porción de Internet. Cumple políticas de seguridad. Administración separada. Temas relacionados: Servicio de archivos Firewalls y mecanismos de seguridad Costos de instalación y mantenimiento Pag. 8
B. Utilización INTRANET print and other servers email server Desktop computers Web server Local area network email server File server print other servers the rest of the Internet router/firewall Pag. 9
B. Utilización COMPUTACIÓN N MÓVILM Características: Dispositivos pequeños y portátiles: PDA, teléfonos móviles, portátiles. Facilidad de transporte. Capacidad de conexión a una red en diferentes lugares. Computación ubícua (por todas partes). Pag. 10
B. Utilización COMPUTACIÓN N MÓVILM Internet Host intranet Wireless LAN WAP gateway Home intranet Printer Camera Mobile phone Laptop Host site Pag. 11
B. Desafíos Heterogeneidad. Extensibilidad. Seguridad. Escalabilidad. Tratamiento de fallos. Concurrencia. Transparencia. Pag. 12
B. Desafíos HETEREOGENEIDAD Redes diferentes Diferentes S.O. Diferente representación de datos. Diferentes protocolos de comunicación Necesidad de definir estándares. Implementación de diferentes desarrolladores Pag. 13
B. Desafíos EXTENSIBILIDAD Característica de un sistema que permite añadirle nuevas características y servicios de forma dinámica. Determina si el sistema puede extenderse, reimplementado en diversos aspectos (añadir y quitar componentes). Facilidad de adición de nuevos servicios. Implica que el sistema esté documentado y construido de forma abierta. Pag. 14
B. Desafíos SEGURIDAD Componentes básicos de la seguridad de la Información: Confidencialidad La información sólo debe estar accesible al personal autorizado. Igualmente, para salvaguardar la confidencialidad, es necesario tener implantadas medidas de seguridad técnicas que eviten el acceso y utilización de la misma por terceros no autorizados. Integridad Que la información de la empresa sea y permanezca íntegra, confiable y completa es algo fundamental, por ello es imprescindible contar con medidas de seguridad técnicas y organizativas que impidan la pérdida de cualquier clase de información. Disponibilidad La información es el principal activo de negocio de cualquier compañía (datos personales de clientes, proveedores, etc..., Know How de la compañía, métodos de trabajo, etc...), y como tal, ha de estar disponible a los usuarios autorizados que por razón de su puesto y funciones hallan de acceder a la misma. Pag. 15
B. Desafíos ESCALABILIDAD Un sistema es Escalable si conserva su efectividad cuando ocurre un incremento significativo en el número de recursos y el número de usuarios. Retos: Control de coste de recursos físicos Según crece la demanda de un recurso, debiera ser posible extender el sistema, a un coste razonable, para satisfacerla Prevención de desbordamiento Desbordamiento de Buffers (Buffer Overflows), Desbordamiento de Pila (Stack Overflow) Evitar cuellos de botella. Pag. 16
B. Desafíos TRATAMIENTO DE FALLOS Los fallos en los Sistemas Distribuidos son parciales; es decir, algunos componentes fallan mientras otros siguen funcionando. Consecuentemente, el tratamiento de fallos es particularmente difícil. Algunas Técnicas para tratar fallos: Detección de fallos (sumas de comprobación=checksum) Enmascaramiento de fallos (reenvío de mensajes si llegó mal) Tolerancia de fallos ( si falla muestra un mensaje) Recuperación frente a fallos (rollback) Redundancia (repetir la información del mensaje para que el ruido no provoque pérdida de la misma). Pag. 17
B. Desafìos CONCURRENCIA En computación, la concurrencia es la propiedad de los sistemas que permiten que múltiples procesos sean ejecutados al mismo tiempo, y que potencialmente puedan interactuar entre sí. Los procesos concurrentes pueden ser ejecutados realmente de forma simultánea, sólo cuando cada uno es ejecutado en diferentes procesadores. En cambio, la concurrencia es simulada si sólo existe un procesador encargado de ejecutar los procesos concurrentes, simulando la concurrencia, ocupándose de forma alternada en uno y otro proceso a pequeñísimos intervalos de tiempo. De esta manera simula que se están ejecutando a la vez. Pag. 18
B. Desafíos TRANSPARENCIA - Oculta al usuario y al programador la naturaleza distribuida del sistema. - Un aspecto muy importante es la forma de lograr la imagen de un único sistema - Los usuarios deben percibir que la colección de máquinas conectadas son un sistema de tiempo compartido de un solo procesador - Desde el punto de vista de los usuarios, la transparencia se logra cuando: Sus pedidos se satisfacen con ejecuciones en paralelo en distintas máquinas. Se utilizan una variedad de servidores de archivos. El usuario no necesita saberlo ni notarlo. - La transparencia desde el punto de vista de los programas significa diseñar la interfaz de llamadas al sistema de modo que no sea visible la existencia de varios procesadores. Pag. 19
C. Estado actual Pag. 20
C. Estado actual 1. Pronóstico TENDENCIAS IDC 2007 1. Virtualización 2. Grid Computing 3. Arquitectura orientada a servicios (SOA) 4. Enterprise Information Management (EIM) 5. Código abierto 6. Acceso a la información 7. Ajax 8. Mashup Composite Model 9. Computación Distribuida en el Ambiente (del inglés, Pervasive Computing) 10. Recolección inteligente de datos. Pag. 21
C. Estado actual 1. Pronóstico TENDENCIAS Gartner 2007 1. Código abierto 2. Virtualización 3. Registro de servicios y repositorios 4. Suites para la gestión de procesos de negocios 5. Enterprise Information Management (EIM) 6. Cómputo ubicuo 7. Acceso a la información 8. Web 2.0 AJAX Rich Clients 9. Web 2.0 - Mashup Composite Model 10. Inteligencia colectiva y comunidades Pag. 22
C. Estado actual OTRAS TENDENCIAS Web Semántica WOA (Web Oriented Architectures). EDA (Event-Driven Architectures). Hardware: buses y redes de alta velocidad (infiniband), ahorro energético. Domótica. Pag. 23
D. Conclusiones Área de mayor crecimiento? Sistemas Distribuidos Área de mayor demanda? Sistemas Distribuidos Área que ofrece mayores expectativas? Sistemas Distribuidos Área que hay que estudiar? Sistemas Distribuidos Pag. 24
D. IDE Pag. 25
D. IDE Pag. 26
GRACIAS POR SU ATENCION FIN Pag. 27