Señales analógicas y digitales en la transmisión de datos
Sistemas Distribuidos conceptos generales
1. 1
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors
Conceptos generales de sistemas distribuidos
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
2
v.2005.09
Sistema distribuido
“Un sistema en el que los componentes hardware
y/o software ubicados en computadores en
red, se comunican y coordinan sus acciones
intercambiando mensajes.” Coulouris
“Colección de ordenadores autónomos
enlazados por una red y soportados por
aplicaciones que hacen que la colección actúe
como un servicio integrado”
2. 2
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
3
v.2005.09
Conceptos (I)
o Proceso: Programa que se ejecuta en una máquina.
– En muchas máquinas pueden ejecutarse varios procesos a la vez.
o Agente: Proceso conectado a la red.
– En ocasiones se denomina "agente" a un proceso que actúa sin control directo
del usuario, y que puede presentarse a la red como un usuario.
o Cliente: Proceso que puede establecer conexiones a servidores y
enviar peticiones a él.
o Agente de usuario: Cliente que representa al usuario.
– A menudo tienen interface de usuario, para que las personas puedan
controlarlo directamente.
o Servicio: Parte de un sistema de computadores que gestiona una
colección de recursos y presenta una funcionalidad a los usuarios y a
las aplicaciones.
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
4
v.2005.09
Conceptos (II)
o Servidor: proceso que acepta conexiones de clientes y realiza
servicios para ellos.
– Un servidor puede atender varias peticiones simultáneas de varios clientes (1 o
varios procesos, uno para cada cliente).
o Host: máquina conectada a la red que proporciona servicios.
– El mismo hostpuede tener varios procesos servidor que proporcionen diversos
servicios.
HostPC
Cliente
Agente Usuario
Servidor
1-n procesos
Conexión
3. 3
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
5
v.2005.09
¿Por qué sistemas distribuidos?
o Funcionales: los computadores tienen diferentes funcionalidades.
Ejemplo: terminales/servidor.
o Distribución del trabajo: los computadores se reparten el trabajo.
Ejemplo: SETI@home
o Económicos: es más barato muchos ordenadores pequeños que
pocos muy grandes.
Ejemplo: Cluster distribuido (0,5 millones $) ~ ASCI While IBM (110 millones $)
o Físicos: dispersos geográficamente.
Ejemplo estaciones meteorológicas.
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
6
v.2005.09
Arquitecturas cliente/servidor
o Distribución de sistemas en diferentes nodos y como se
comunican entre sí.
Servidor
Cliente Cliente
Cliente
Servidor
Servidor
p1
p2
p1 p1
p2
Servidor
Cliente Cliente
Cliente
p
Cliente
ServidorServidor
Servidor
Cliente
Servidor Servidor
Servidor
Servidor
Cliente
Servidor
Servidor
Encadenado,
recursivo
Referencia, iterativo Multicast, difusión
4. 4
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
7
v.2005.09
Otras arquitecturas
o Descentralizado ~ Peer to Peer
P2P
o Dispositivos móviles
o Agentes móviles
o Clientes Thin
Cli/Ser
Cli/Ser
Cli/Ser
Cli/Ser
Cli/Ser
Servidor
+ Cliente
Cliente
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
8
v.2005.09
Desafíos de un SD (I)
o Heterogeneidad: computadores, SO, redes, lenguajes de
programación,...
Windows/Linux/Mac/... o C/Java/...
o Extensibilidad: sistema abierto, estándares públicos.
¿Navegar? TCP/IP y Visualizador HTML
o Seguridad: confidencialidad, integridad, autenticación…
¿Quién es? ¿Alguién ha cambiado la información?
o Escalabilidad: el sistema puede crecer.
¿Podríamos conectarnos todos a Internet?
5. 5
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
9
v.2005.09
Desafíos de un SD (II)
o Tolerancia a fallos: ante un fallo el resto del sistema sigue
funcionando.
¿Deja de funcionar Internet si falla mi ordenador? ¿y si falla Terra?
o Concurrencia de los sistemas y procesos
¿Qué pasa si consultamos todos una misma web?
o Transparencia: el usuario y los programas ven al sistema como un
todo.
¿Dónde está un servidor web? ¿Por dónde se pasa para llegar?
o No existe el reloj universal
¿Todos los ordenadores tienen la misma hora?
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
10
v.2005.09
Desafíos: Heterogeneidad y Transparencia
Nivel Físico
Nivel Transporte (TCP,UDP,RTP)
Nivel IP
Hardware
Sistema Operativo
Middleware
Nivel aplicación
en redes en sistemas distribuidos
6. 6
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
11
v.2005.09
Desafíos: Escalabilidad
Que un mecanismo pueda funcionar en entornos
pequeños o globales (número de máquinas,
distancia, ancho de banda, capacidad, etc.)
o Autonomía: número de mensajes…
o Distancia: temporizadores adaptables, concurrencia…
¿Cómo hacer que un sistema sea escalable?
o Caché: ahorro al guardar copias por el camino…
o Distribución: repartir servicio entre servidores
separados.
o Replicación: ofrecer el mismo servicio desde varios
lugares.
N(N-1) msg
O(N2)
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
12
v.2005.09
Desafíos: Concurrencia
Exclusión mutua
o Acceso a una zona crítica, ejemplo un fichero compartido accediendo
para modificarlo.
– Centralizado: un servidor centraliza el acceso.
– Anillo: paso de un token.
– Multicast: espera confirmación de todos.
– Quórum: espera confirmación de “algunos”.
7. 7
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
13
v.2005.09
Desafíos: no Reloj universal
Caracterización Iteración
o Latencia es el tiempo que tarda
un dato en estar disponible desde
que se realizasu petición.
o Throughput Flujo de datos de
entrada o salida en una aplicación
o Síncrona
o Asíncrona
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
14
v.2005.09
Desafíos: no Reloj universal
o ¿Tiempo?
– Sincronizar un reloj
o ¿Orden? ¿Causalidad?
Reloj = Marca + f(Latencia)
8. 8
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS
Departament d’Arquitectura de Computadors- UPC
15
v.2005.09
Referencias
o Coulouris, G., J. Dollymore y T. Kindberg. Sistemas
Distribuidos: Conceptos y Diseño. Addison-Wesley, 3
edition, 2001
– Capítulo 1: Caracterización Sistemas Distribuidos
– Capítulo 2: Modelos de sistema
– Capítulo 10: Tiempo y estados globales
– Capítulo 11: Coordinación y acuerdo
– Capítulo 12: Transacciones y control de concurrencia
– Capítulo 13: Transacciones distribuidas
– Capítulo 14: Replicación