Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Sistemas distribuidos
Concepto informatico
Los conceptos vienen de muchas reas
Sistemas Operativos. Procesamiento en Paralelo. Sistemas en Tiempo Real. Sistemas Multimedia Distribuidos. Tipos de comunicaciones. Bases de datos distribuidas. Cliente Servidor, Tres niveles, Internet. Objetos, Componentes Distribuidos. Computacin Mvil. Aplicaciones Tradicionales.
Sistemas distribuidos
Sistemas distribuidos
% ISP %
intranet
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Transparencias
Transparencia de acceso: permite que los recursos locales y remotos puedan ser accesados mediante operaciones idnticas. Transparencia de localizacion: permite que los recursos puedan ser accesados sin el conocimiento de su localizacion fsica o de la red (por ejemplo,la direccin IP). Transparencia de concurrencia : permite que varios procesos puedan operar al mismo tiempo utilizando recursos compartidos sin interferencia entre ellos. Transparencia de replicacion : habilita varias instancias de recursos que se utilizarn para aumentar la fiabilidad y rendimiento sin el conocimiento de las rplicas de los usuarios o programadores de aplicaciones. Transparencia de fallo: permite el ocultamiento de fallas, permitiendo a los usuarios y los programas de aplicacin para completar sus tareas a pesar del fracaso de los componentes de hardware o software. Transparencia de movilidad: permite el movimiento de recursos y clientes dentro de un sistema sin afectar el funcionamiento de los usuarios o programas. Transparencia de rendimiento: permite que el sistema sea reconfigurado para mejorar el rendimiento conforme las cargas varen. Transparencia de escalabilidad: permite que el sistema y las aplicaciones crezcan, sin cambio en la estructura del sistema o los algoritmos de la aplicacin. Transparencia de paralelismo: permite que 2 o mas servidores trabajen en forma cooperativa para un servicio sin que el usuario lo pueda observar.
Sistemas distribuidos
Otras definiciones
Un sistema distribuido es una coleccin de computadoras independientes que aparecen ante los usuarios del sistema como una nica computadora Tanenbaum Un sistema distribuido es aquel en el que los componentes localizados en computadores, conectados en red, comunican y coordinan sus acciones nicamente mediante el paso de mensajes Coulouris Sistemas distribuidos
Lic. Jorge Guerra G. 12
Cambio de paradigma
Control central Nombramiento global Consistencia global Ejecucin secuencial Vulnerabilidad Informacin local Localizacin fija Homogeneidad Autonoma Nombramiento federado (no
resuelto distribuidamente, por partes)
Consistencia dbil Ejecucin concurrente Tolerancia a fallos Informacin remota Migracin Heterogeneidad
Sistemas distribuidos
Retos
Los retos a los cuales se enfrentan los Sistemas Distribuidos son:
Heterogeneidad. Extensibilidad. Seguridad. Escalabilidad. Tratamiento de Fallos. Concurrencia. Transparencia.
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Definicin de Enslow Sistema distribuido = hardware distribuido + control distribuido + datos distribuidos
Un sistema se podra considerar como un sistema distribuido si las tres categoras (hardware, control, datos) alcanzan un cierto nivel de descentralizacin
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Comparticin de recursos
Sistemas distribuidos
Sistemas distribuidos
Sistema Abierto
Sistemas distribuidos
Escalabilidad
Sistemas distribuidos
Tolerancia a fallos
Sistemas distribuidos
Tolerancia a fallos
Sistemas distribuidos
Seguridad
Sistemas distribuidos
Ventajas e inconvenientes
Sistemas distribuidos
Implementacion final
Sistemas distribuidos
Aplicaciones
Sistemas distribuidos
Boeing
Sistemas distribuidos
Sistemas distribuidos
Acceso a servicios
Modelo multiproceso.
Modelo de memoria compartida
Tambin conocidos como multiprocesadores Todos los procesadores comparten el espacio de direcciones El programador no tiene que saber donde se encuentran los datos
Sistemas distribuidos
Sistemas distribuidos
Arquitecturas hardware
Sistemas distribuidos
Arquitecturas hardware
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Paradigma Cliente-Servidor
Servidor tiene todo: el know-how, el procesador y los recursos
Cliente necesita inteligencia para descubrir al servidor que provee el servicio que se necesita.
Lic. Jorge Guerra G.
Paradigma Cliente-Servidor
Ejemplos: RPC, CORBA, XML Web-Services etc.
Paradigma Cdigo-por-demanda
Cliente tiene el procesador y los recursos. No tiene el know-how Servidor enva el know-how sobre el cliente.
Server know-how
Client
Paradigma Cdigo-por-demanda
Paradigma Cdigo-por-demanda
know-how
Paradigma Cdigo-por-demanda
Flash y Youtube son un buen ejemplo de este paradigma.
Server
Client
know-how
know-how
Host
Host
Lic. Jorge Guerra G.
Host
Host
Lic. Jorge Guerra G.
Host
Host
Lic. Jorge Guerra G.
Host
Host
Lic. Jorge Guerra G.
Host
Host
Lic. Jorge Guerra G.
Host
Host
Lic. Jorge Guerra G.
Nuevos Paradigmas de SD
Cluster Computing: Dedicados a tareas especficas: Altas prestaciones. Alta disponibilidad. Sistema homogneo (a menudo dedicado): Nodos PCs. LAN (de propsito general o especficas). Problemtica: Grado de acoplamiento, servicios distribuidos. Grid Computing: Aprovechamiento de recursos creando un uniprocesador virtual. Restringido a una serie de tareas. Diferentes mbitos: Desde intradepartamentales. Hasta intercorporativos. Problemtica: Coordinacin, seguridad, carcter dinmico.
Sistemas distribuidos
Cluster Computing
La idea del Cluster Computing es simple: Un grupo de ordenadores independientes se conectan entre s. Los elementos conectantes son cables y un software especial de cluster. Ya que los distintos ordenadores se complementan, por ejemplo en el caso de Failover o balanceo de cargas. Falla uno, los dems se encargan de su trabajo. Para un ordenador slo sto es imposible. De sta forma se garantiza la alta disponibilidad las 24 horas del da. Igualmente se facilita la administracin. La unin "clusterizada" de ordenadores es como un nico punto de control, que podr ser administrado sin ningn problema de forma remota.
Sistemas distribuidos
Modelo de Cluster
Sistemas distribuidos
Cluster Computing
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Modelo de GRID
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Desarrollos Web
Caso particular de desarrollo cliente servidor con representacin remota, en la cual disponemos de un protocolo standard: HTTP y un servidor denominado WebServer. Cada pgina puede desencadenar la solicitud de numerosos peticiones adicionales para finalizar el proceso de representacin remota. Se dispone de un lenguaje standard de definicin y formateo de pginas: HTML
Sistemas distribuidos
Desarrollos Web
Incrustacin de la lgica de aplicacin en el servidor Web:
CGI: Common Gateware Interface
Cada peticin HTTP genera un nuevo proceso, el cual analiza la solicitud y genera un resultado. Cada proceso corresponde a una transaccin. Es flexible, ideal para pequeas aplicaciones de uso reducido No escala adecuadamente
Plug-ins
Cada peticin HTTP es resuelta por el componente adecuada, dentro del mismo proceso del Web-Server. Mejor rendimiento Compromete la seguridad y fiabilidad del servidor Web
Servidor especializado
Facilidad de desarrollo Buen rendimiento Rigidez de configuracin
Sistemas distribuidos
Sistemas distribuidos
Desarrollos Web
Tipos de plug-ins
HTML incrustado en cdigo
Se centran en la lgica Son fcilmente de optimizables Ejemplos: servlets, Perl, Python
Sistemas distribuidos
Sistemas distribuidos
Desarrollo Web
Sistemas distribuidos
Implementacion
Sistemas distribuidos
Sistemas distribuidos
View
Model
User Controller
Sistemas distribuidos
Sistemas distribuidos
Medidas a tomar:
Separar la lgica de aplicacin del interface de usuario Utilizar mtodos estndar de comunicacin entre la lgica de aplicacin y el interface de usuario Uso de herramientas que permitan adaptar rpidamente las aplicaciones a los nuevos tipos de dispositivos que irn apareciendo
Sistemas distribuidos
Mvil
Wml binario
Web Server
-
WAP Server
-
Pginas HTML
XML
Pginas WML
Servidor Aplicaciones
SQL
Lgica de negocio
Base de datos
Datos
Sistemas distribuidos
Mvil
Wml binario
Web Server
-
WAP Server
-
Pginas HTML
XML
Pginas WML
Lgica de negocio
Base de datos
Datos
Sistemas distribuidos
Mvil
Wml binario
Web Server
-
WAP Server
-
Base de datos
Datos
Sistemas distribuidos
Java
Sistemas distribuidos
Arquitectura I-MODE
Packet iMode Network Server (PDC-P)
Info. Provider Info. Provider Info. Provider
Internet
PC
PSTN
Groupware Server
PC
Sistemas distribuidos
Coexistencia Java-WAP
WML Browser XML or XHTML Browser J2ME
Invoke
J2ME
RTOS
RTOS
Sistemas distribuidos
Arquitectura WAP
Web Server
WML Decks with WML Script
WAP Gateway
WML Encoder
Client
WML
WML Script
Content
Protocol Conversion
WTAI
HTTP
WTP
Lic. Jorge Guerra G. 87
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos
Sistemas distribuidos