Está en la página 1de 8

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors

Conceptos generales de sistemas distribuidos

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

Coleccin de ordenadores autnomos enlazados por una red y soportados por aplicaciones que hacen que la coleccin acte como un servicio integrado
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 2

v.2005.09

Conceptos (I)
o o

Proceso: Programa que se ejecuta en una mquina.


En muchas mquinas pueden ejecutarse varios procesos a la vez.

Agente: Proceso conectado a la red.


En ocasiones se denomina "agente" a un proceso que acta sin control directo del usuario, y que puede presentarse a la red como un usuario.

o o

Cliente: Proceso que puede establecer conexiones a servidores y enviar peticiones a l. Agente de usuario: Cliente que representa al usuario.
A menudo tienen interface de usuario, para que las personas puedan controlarlo directamente.

Servicio: Parte de un sistema de computadores que gestiona una coleccin de recursos y presenta una funcionalidad a los usuarios y a las aplicaciones.
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 3

v.2005.09

Conceptos (II)
o

Servidor: proceso que acepta conexiones de clientes y realiza servicios para ellos.
Un servidor puede atender varias peticiones simultneas de varios clientes (1 o varios procesos, uno para cada cliente).

Host: mquina conectada a la red que proporciona servicios.


El mismo host puede tener varios procesos servidor que proporcionen diversos servicios. Cliente Agente Usuario Conexin PC Host Servidor 1-n procesos

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 4

Por qu sistemas distribuidos?


o

Funcionales: los computadores tienen diferentes funcionalidades.


Ejemplo: terminales/servidor.

Distribucin del trabajo: los computadores se reparten el trabajo.


Ejemplo: SETI@home

Econmicos: es ms barato muchos ordenadores pequeos que pocos muy grandes.


Ejemplo: Cluster distribuido (0,5 millones $) ~ ASCI While IBM (110 millones $)

Fsicos: dispersos geogrficamente.


Ejemplo estaciones meteorolgicas.

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 5

Arquitecturas cliente/servidor
o

Distribucin de sistemas en diferentes nodos y como se comunican entre s.


Cliente Cliente
p p2

Servidor
p2

Cliente
p1

Servidor
p1

Servidor
p1

Servidor

Cliente

Cliente

Cliente Servidor Cliente Servidor Servidor


Multicast, difusin

Cliente Servidor

Encadenado, recursivo

Cliente

Servidor

Servidor

Servidor Servidor
Referencia, iterativo

Servidor

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 6

Otras arquitecturas
o

Descentralizado ~ Peer to Peer


P2P

Cli/Ser

Cli/Ser Cli/Ser

Dispositivos mviles

Cli/Ser

Cli/Ser

Agentes mviles
Servidor + Cliente

Clientes Thin

Cliente

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 7

Desafos de un SD (I)
o

Heterogeneidad: computadores, SO, redes, lenguajes de programacin,...


Windows/Linux/Mac/... o C/Java/...

Extensibilidad: sistema abierto, estndares pblicos.


Navegar? TCP/IP y Visualizador HTML

Seguridad: confidencialidad, integridad, autenticacin


Quin es? Alguin ha cambiado la informacin?

Escalabilidad: el sistema puede crecer.


Podramos conectarnos todos a Internet?

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 8

Desafos 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?

Concurrencia de los sistemas y procesos


Qu pasa si consultamos todos una misma web?

Transparencia: el usuario y los programas ven al sistema como un todo.


Dnde est un servidor web? Por dnde se pasa para llegar?

No existe el reloj universal


Todos los ordenadores tienen la misma hora?
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 9

v.2005.09

Desafos: Heterogeneidad y Transparencia

en redes

en sistemas distribuidos
Nivel aplicacin

Nivel Transporte (TCP,UDP,RTP) Nivel IP Nivel Fsico

Middleware Sistema Operativo Hardware


FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 10

v.2005.09

Desafos: Escalabilidad
Que un mecanismo pueda funcionar en entornos pequeos o globales (nmero de mquinas, distancia, ancho de banda, capacidad, etc.) o Autonoma: nmero de mensajes o Distancia: temporizadores adaptables, concurrencia Cmo hacer que un sistema sea escalable? o Cach: ahorro al guardar copias por el camino o Distribucin: repartir servicio entre servidores
separados. lugares.
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 11

N(N-1) msg O(N2)

Replicacin: ofrecer el mismo servicio desde varios

v.2005.09

Desafos: Concurrencia
Exclusin mutua o Acceso a una zona crtica, ejemplo un fichero compartido accediendo para modificarlo. Centralizado: un servidor centraliza el acceso. Anillo: paso de un token. Multicast: espera confirmacin de todos. Qurum: espera confirmacin de algunos.

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 12

Desafos: no Reloj universal

Caracterizacin Iteracin o Latencia es el tiempo que tarda


un dato en estar disponible desde que se realiza su peticin. o Throughput Flujo de datos de entrada o salida en una aplicacin o Sncrona o Asncrona
v.2005.09 FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 13

Desafos: no Reloj universal


o Tiempo?

Sincronizar un reloj
Reloj = Marca + f(Latencia)

o Orden?

Causalidad?

v.2005.09

FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 14

Referencias
o

Coulouris, G., J. Dollymore y T. Kindberg. Sistemas Distribuidos: Conceptos y Diseo. Addison-Wesley, 3 edition, 2001
Captulo 1: Caracterizacin Sistemas Distribuidos Captulo 2: Modelos de sistema Captulo 10: Tiempo y estados globales Captulo 11: Coordinacin y acuerdo Captulo 12: Transacciones y control de concurrencia Captulo 13: Transacciones distribuidas Captulo 14: Replicacin
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament dArquitectura de Computadors - UPC 15

v.2005.09