Вы находитесь на странице: 1из 39

Introduccion

Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Sistemas Distribuidos -Arquitecturas

M.C. Fernando Pech May

Instituto Tecnol
ogico Superior de los Ros
auxtecomp@gmail.com
Materia: Sistemas Distribuidos

Curso de verano, 2011

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 1/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Tabla de contenido

1 Introduccion

2 Modelos arquitectonicos

3 Arquitectura de sistema
Arquitectura Cliente-servidor
Interfaces y objetos

4 Modelos fundamentales
Modelo de Interacci
on
Modelo de fallo
Modelo de Seguridad

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 2/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Los SD son los sistemas de software mas complejos


Nortel Networks crea switches los cuales pueden contener
entre 25-30 millones de lneas de c
odigo, interviniendo 3000
desarrolladores de software, y con un ciclo de vida de 20 anos
para actualizar.
En Motorola, el 20% de sus ingenieros producen hardware,
80% produce software.
En este tipo de software hay materia para toda clase de
problemas de ingeniera de software.

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 3/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Investigacion de arquitectura de software para tratar los retos de


dise
no
... Incluye la organizaci
on de un sistema como la
composicion de componentes; control global de estructuras;
los protocolos para comunicaci on, sincronizacion, y acceso a
datos; la asignacion de funcionalidad para dise nar elementos;
la composicion de diseno de elementos; distribucion fsica;
escalamiento y desempe no; dimensiones de evolucion; y
seleccion de alternativas de dise
no. Este es el nivel de dise no
arquitectura de software.[Garlan y Shaw]

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 4/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Algunos paradigmas de arquitecturas pertinentes para SD


Capas
Cliente-Servidor
Idea basica
Desmembrar la complejidad de sistemas mediante el dise
no en
capas y servicios
Capas: grupo de funcionalidades fuertemente relacionadas y
altamente coherentes
Servicios: funcionalidades proporcionadas a capas superiores

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 5/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Ejemplos de arquitecturas en capas


Sistemas operativos (kernel, otros servicios), historicamente:
los sistemas operativos
Arquitecturas de protocolos de red

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 6/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Estructura tpica en capas de un SD

Componentes Importantes:
Plataforma (Hardware y Sistema operativo)
Middleware

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 7/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Plataforma

Contiene los servicios propios de cada computadora concreta


Depende del hardware y del S.O.
Windows NT / Procesador Pentium
Solaris / Procesador SPARC

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 8/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Middleware

Logra trasparencia en la heterogeneidad en el nivel de


plataforma
Puede dar un modelo y una interfaz de programacion utilizable
Puede soportar abstracciones como:
Llamadas a procedimientos remotos (RPC)
Comunicacion en grupo
Eventos, replicaci
on, servicios multimedia, etc...

Ejemplos
CORBA (OMG), DCOM (Microsoft)
RM-ODP (ITU-T/ISO)
Invocacin de Metodos Remotos Java (SUN)
Servicios Web

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 9/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Middleware

Que forma tiene el middleware?


Bibliotecas adicionales:
Procedimientos remotos (RPC)
Objetos remotos (RMI, CORBA)
Herramientas de programaci
on
Lenguajes de definicin de interfaces (IDL)
+ Compiladores para ellos
Servicios basicos de ayuda
servicios de nombres, para buscar objetos
de notificacin de eventos,
De control de transacciones, etc.

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 10/39
Introduccion
Modelos arquitectonicos
Arquitectura de sistema
Modelos fundamentales

Middleware

Que limitaciones impone?


Se incrementa la complejidad arquitect
onica:
Hay m
as niveles
Hay que aprender mas herramientas
Se pierde el control de bajo nivel sobre los modos de fallo
Se depende de terceras partes,
...

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 11/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Arquitectura de sistema

Modelo Cliente-Servidor
M
ultiples servidores
Procesos de Igual a Igual

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 12/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Cliente: el proceso requiere acceder datos, utilizar recursos o


ejecutar operaciones en una computadora diferente
Servidor: Proceso maneja datos y otros recursos compartidos,
permite al cliente acceder a recursos y ejecutar computos
Interaccion: invocacin / par de mensajes resultantes
Ejemplo: Servidor http: cliente (navegador) pgina solicitada,
servidor entrega pagina
Servicios de caching (servidores proxy)
Muy habitual (DNS, Web, ftp, telnet, ...)
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 13/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes
Servicios proporcionados por m
ultiples servidores

Ejemplos: muchos servicios de comercio Web estan


implementados en diferentes servidores
Motivacion (Desempeno, confiabilidad)
Los servidores mantienen bases de datos replicadas o
distribuidas
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 14/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes
Servidores proxy: suministrar replicaci
on/distribucion trasparente

Caching
Los servidores proxy mantienen caches, como almacenes de
recursos solicitados recientemente
Utilizados frecuentemente en motores de b
usqueda:

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 15/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes
Mas variantes de modelo Cliente- Servidor
Codigo Movil
Codigo enviado a un proceso cliente para realizar una tarea
especfica
Ejemplos
Applets
Mensajes Activos(contiene c
odigo de protocolo de
comunicaci
on)
Agentes moviles
Programa ejecutado (c odigo + datos), migracion entre
procesos, realizando una tarea aut
onoma, frecuentemente en
representacion de otro proceso
ventajas: flexibilidad, ahorro en costo de comunicacion
Merados virtuales, programas gusano
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 16/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes

Clientes delgados
Ejecutar interfaces de ventanas localmente mientras la
aplicacion se ejecuta en el servidor
ejemplo: servidores X11 (corren del lado de la aplicacion
cliente)
Dispositivos portatiles para c
omputo m
ovil
personal digital assistants (PDAs)
Como se conectan a internet
wireless LANs/ MANs
wireless Personal Area Networks

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 17/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes -Gestion espontanea de red

Caractersticas
W-LAN se enfrentan a constantes cambios de dispositivos
m
oviles heterogeneos
Dispositivos vagando en ambientes W-LAN heterogeneos
Beneficios
no se requiere conexi on con cable
Facil acceso a servicios disponibles localmente
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 18/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes -Gestion espontanea de red

Retos
Soporte para conexiones convenientes e integracion:
Internet asume dispositivos con direcci
on IP en redes fijas
Posible soluci
on: asignaci
on dinamica de direcciones IP
Problemas: como encontrar dispositivos si estos son servidores
Conexion intermitente de dispositivos
Privacidad
Seguridad
Descubrimiento de servicios
Servicios disponibles en la red
Sus propiedades, y como accederlos (incluyendo informacion
especfica de drivers)

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 19/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes -Gestion espontanea de red

Conexion espontanea
Metropolitana (GPRS, UTMS)
Media (x0 o x00 m) (Wavelan, Wireless 802.11b)
Corta (x o x0 m) (BlueTooth, infrarojos, HomeRF)

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 20/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Variantes
Procesos pares
Cuando los roles entre procesos son de igual a igual
(peer-to-peer)
Ejemplo:
Cooperacion y coordinaci
on
Algoritmos descentralizados
(coordinaci
on de agendas, trabajo colaborativo, ...)

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 21/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Interfaz de un proceso
Utilizar arquitecturas cliente-servidor impacta en el uso del
software
cual es el mecanismos de sincronizaci
on entre cliente y
servidor?
tipos permitidos de solicitudes/respuestas?
Conjunto de peticiones a que responde
Estilos
Mediante interfaces de m odulos modulos
Mediante la interfaz de los objetos en OOP
Soportado de modo natural para SD en: JAVA RMI, CORBA

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 22/39
Introduccion
Modelos arquitectonicos Arquitectura Cliente-servidor
Arquitectura de sistema Interfaces y objetos
Modelos fundamentales

Los procesos contienen objetos cuyos metodos podemos invocar de


modo remoto
Es deseable que las referencias a los objetos remotos se usen
de modo transparente(como las locales)
No podemos hablar exclusivamente de procesos cliente y
procesos servidor, sino de objetos cliente y objetos servidor
Retos de dise
no
Calidad de servicio
Desempe no (Tiempo de respuesta, caudal, puntualidad)
Confiabilidad
Adaptabilidad
Dependencia
Tolerancia a fallas: se espera que el sistema siga funcionando
correctamente a pesar de presentarse fallas
Seguridad
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 23/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Modelos fundamentales

Sistema Distribuido
Procesos m
ultiples
Conectados mediante canales de comunicacion
Algoritmo distribuido
Pasos a realizar por cada proceso
Comunicacion entre procesos (sincronizaci
on, flujo de
informaci
on)
Paradigmas generales para captar aspectos de
comportamiento de un sistema distribuido basado en
mensajes, algoritmos de ejecuci
on
Comunicando maquinas de estado finito extendidas [Brand y
Zafiropoulo]
Automatas de E/S [Lynch]

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 24/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Modelos fundamentales

Modelo: contiene los elementos esenciales para comprender y


razonar sobre el sistema
Manifiesta las premisas del sistema
Generaliza sobre lo que es posible o no.
Principales modelos
De interacci
on
De fallo
De seguridad

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 25/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

La forma en que se produce el paso de mensajesentre los


procesos restringe los modos de interacci
on
Retrasos, precisi
on, y tiempo

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 26/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Problemas presentados en las prestaciones del canal


latencia: retardo entre el envo y recepci
on del mensaje
Tiempo de acceso a la red (ej., retardos de transmisi
on
Ethernet)
Tiempo para que el primer bit viaje desde la interfaz de la red
transmisora hasta la interfaz de red receptora
Tiempo procesado dentro del proceso de envo y recepci on
caudal: numero de unidades (ej., paquetes) entregadas por
unidad de tiempo
Ancho de banda: cantidad de informaci on (ej., bits)
transmitida por unidad de tiempo
Variaci
on de retardo: variacion en retardos entre diferentes
mensajes del mismo tipo (ej., cuadros de video en redes ATM)

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 27/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

En virtud del modelo de comunicaci


on aparecen dos familias
de sistemas:
Sistemas distribuidos sncronos
el tiempo para ejecutar cada paso de un proceso tiene
establecidos limites inferiores y superiores
los tiempo de entrega de mensajes tienen limites establecidos
cada proceso tiene un reloj que deriva rangos en tiempo real
con limites establecidos
Sistemas distribuidos asncronos: sin lmite
Tiempos de ejecuci
on de procesos
Tiempo de entrega de mensajes
Tasa de movimiento del reloj
Nota
los sistemas distribuidos sncronos son faciles de manejar, pero
determinar limites realistas puede ser difcil o imposible
Los sistemas asncronos son mas abstractos y genericos: un
algoritmo distribuido ejecutado en un sistema es probable que
tambien trabaje en otro
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 28/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Tiempo y sincronicidad
Consecuencia basica de la asincronicidad
en un sistema asncrono los eventos pueden observarse
desordenados con respecto a su generaci on
Ejemplo
El usuario X enva un mensaje con el tema Reunion.
Los usuarios Y y Z responden con un mensaje con el tema Re:
Reunion.

Si rompe la relacion de causalidad


Si los relojes de X, Y y Z pudieran sincronizarse, podramos
observar la secuencia ordenada.
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 29/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 30/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Posibilidad en sistemas asnconos:


Relojes logicos: Proporcionan enteros consecutivos que
permiten ordenar eventos marcados por un timestamp, con la
relacion de orden ocurri
o antes(S1 ,S2 ).
X enva m1 antes de que Y reciba m1
T(enva(X,m1 )) < T(recibe(Y,m1 ))
ocurri
o antes(enva(X,m1 ), recibe(Y,m1 ))
Y recibe m1 antes de enviar m2
T(recibe(Y,m1 )) < T(enva(Y,m2 ))
ocurri
o antes(recibe(Y,m1 ), enva(Y,m2 ))
Luego por transitividad
T(enva(Y,m2 )) < T(recibe(X,m2 ))
ocurri
o antes(enva(X,m1 ), enva(Y,m2 ))
X enva m1 antes de que Y enve m2

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 31/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Modelo de fallo

Fallo por omisi


on (del proceso o del canal)
Fallas por omisi
on de proceso: cada de proceso
deteccion con timeouts
la cada es del tipo fail-stop si otro proceso puede detectar con
certeza que el proceso ha cado
Fallas por omisi
on de comunicaci
on (canal): el mensaje no ha
sido entregado (perdida de mensajes)
Posibles causas:
error de trasmisi
on de red
Sobrecarga de buffer de recepci
on de mensajes
Fallas arbitrarias
proceso: omite pasos esperados del proceso o lleva a cabo no
deseados
Canal de comunicacion: ej., sin entrega, corrupcion o
duplicidad

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 32/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Tipos de fallos

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 33/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Modelo de seguridad

Las tecnicas de seguridad permiten la comprobacion de fallos


y la minimizacion de su posible aparici
on:
Comunicaci on Fiable
Validez de la comunicaci
on:
cualquier mensaje enviado() sera escuchado.
Integridad de la comunicaci
on:
Cualquier mensaje recibido() es correcto y respeta la
secuencialidad.
Amenazas:
Duplicacion de mensajes, desorden, corrupci
on del mensaje,
revelaci
on, (y sigue...)

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 34/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Amenaza a los Procesos

Acceso indebido a los recursos


Ataque a la integridad del proceso
Suplantacion de los principales interlocutores
Falsificacion de servicios
Falsificacion de peticiones

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 35/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Amenaza a los canales

Acceso indebido al canal


Captura de mensajes
Reenvo de mensajes
Eliminacion de mensajes
Modificacion de mensajes y de c
odigo m
ovil

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 36/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Amenaza a la disponibilidad del servicio

Ataque a la integridad de los servicios


Ataque de denegaci on de servicio

Seguridad de...
Las interacciones en procesos y canales
Las acciones de acceso a objetos (derechos)
Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 37/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Tecnicas

Criptografa (de clave secreta y de clave p


ublica)
Encriptaci
on para preservar la privacidad
Firmas para preservar la autenticidad
Autenticacion para preservar la identidad
Contrato digital para preservar la legalidad
Ejemplos de servicios seguros
Correo electr
onico seguro
Pagos seguros por Internet

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 38/39
Introduccion
Modelo de Interacci
on
Modelos arquitectonicos
Modelo de fallo
Arquitectura de sistema
Modelo de Seguridad
Modelos fundamentales

Tecnicas

Tecnicas sobre derechos de acceso


Control de acceso a los recursos
Control de acceso a los servicios
Tecnicas de filtrado y seguridad de trafico en redes
Mecanismos de confianza por dominios
Protecci
on pasiva (cortafuegos)
Tunelizaci
on
...

Fernando Pech May Sistemas Distribuidos -Arquitecturas Curso de verano, 2011 39/39

Вам также может понравиться