Está en la página 1de 19

Sistemas Distribuidos

Conceptos Preliminares

Un Sistema Distribuido
Un Sistema Distribuido es una coleccin de computadoras independientes que aparecen a sus usuarios como un nico y coherente sistema Computadores Heterogeneos vendedores/OS deberan ser capaces de interoperar Comunicacin debera ser escondida Debera ser fcil de expandir y escalar Debera ser permanentemente disponible (an si partes de el no lo estuviern)
Mquina A Mquina B Mquina C

Aplicaciones Distribuidas

Servicios de Middleware

SO, e.g. Windows XP

SO, e.g. Mac OS 10

SO, e.g. Linux

RED

Alguna Terminologa
Termino Generico -

cualquier computador

en una red distribuida Un Proveedor de Informacin Un Consumidor de Informacin


Computador/ Dispositivo Nodo Peer Cliente Servidor Recurso

Ambos un Proveedor y Consumidor de Informacin

Servicio

Una red disponibiliza entidades que proveen algn servicio

Recurso: cualquier recurso de hardware o software compartido en una red distribuida e.g. un sistema de almacenamiento de archivos, RAM, UCP, un archivo, un servicio o un canal de comunicacin

Transparencia en un Sistema Distribuido


Transparencia Descripcin Esconde diferencias en la representacin de datos y como el recurso es accesado Esconde donde el recurso est localizado Esconde que un recurso se puede mover de una ubicacin a otra Esconde que un recurso se puede mover de una ubicacin a otra mientras este en uso Esconde que un recurso puede tener varias copias compartidas por varios usuarios en competicin Esconde que un recurso puede ser compartido por varios usuarios Esconde la falla y recuperacin de un recurso Esconde si un recurso (software) est en memoria o en disco

Acceso
Ubicacin Migracin

Reubicacin
Replicacin Concurrencia Fallas Persistencia

Diferentes formas de transparencia en un Sistema Distribuido.

Taxonoma para Sistemas Distribuidos


Taxonoma est basada en los siguientes factores:
1. Descubrimiento Recurso: Mecanismo para descubrir recursos en un sistema distribuido? DNS: central enlace temprano de nombres de servidores a direcciones IP - pocos servidores nombrados para obtener acceso Google: google.com = 168.127.47.8 Ejemplos: DNS, JXTA Rendezvous, Jini LUS, UDDI, etc. 2. Disponibilidad Recurso: Escalabilidad los recursos escalan con la red? Ver ejemplo...

Mp3.com, Napster y Gnutella


Usuario Usuario

Napster.com Mp3.com

Escenario MP3.com

Escenario Napster

Escenario Gnutella

Taxonoma Sistemas Distribuidos


Taxonoma est en los siguientes factores:
1. Descubrimiento Recurso: Mecanismo para descubrir recursos en un sistema distribuido? DNS: central enlace temprano de nombres de servidores a direcciones IP - pocos servidores nombrados para obtener acceso Google: google.com = 168.127.47.8 pero la busqueda es en paralelo Ejemplos: DNS, JXTA Rendezvous, Jini LUS, UDDI, etc. 2. Disponibilidad Recurso: Escalabilidad los recursos escalan con la red? Ver ejemplo... 3. Comunicacin Recurso: Dos tipos: Comunicacin Intermediada (centralizada): comunicacin es pasada a travs de un servidor central - recursos no tienen referencias directas unos con otros. Punto a punto (descentralizado -peer to peer): una conexin directa entre el emisor y el receptor (aunque la conexin puede ser multi-saltos).

Centralizacin de Conexiones Punto-a-Punto


Peer to Peer verdadero e.g. Gnutella

Web Server

Relacin Muchos a uno entre usuarios y el servidor web y por lo tanto esto puede ser considerado una comunicacin centralizada

Pares iguales, comunicacin se supone que es uniforme i.e. cada proveedor es tambin un consumidor de informacin y cada nodo tiene un nmero igual de conexiones Esto no siempre es el caso

Taxonoma para Sistemas Distribuidos


Taxonoma est en los siguientes factores:
1. Descubrimiento Recurso: Mecanismo para descubrir recursos en un sistema distribuido? DNS: central enlace temprano de nombres de servidores a direcciones IP - pocos servidores nombrados para obtener acceso Google: google.com = 168.127.47.8 pero la busqueda es en paralelo Ejemplos: DNS, JXTA Rendezvous, Jini LUS, UDDI, etc. 2. Disponibilidad Recurso: Escalabilidad los recursos escalan con la red? Ver ejemplo... 3. Comunicacin Recurso: Dos tipos: Comunicacin Intermediada (centralizada): comunicacin es pasada a travs de un servidor central - recursos no tienen referencias directas unos con otros. Punto a punto (descentralizado -peer to peer): una conexion directa entre el emisor y el receptor (aunque la conexin puede ser multi-saltos).

Sistemas Centralizados
tipicamente, sistemas basados en C/S

Hibrido combinacin de los 2 extremos e.g. arquitect. intermedia

Descentralizado
sistemas - Peer to Peer (P2P)

Centralizado

Hbrido

Descentralizado

Un Servidor Web : Centralizado


Servidor Web
Centralizado Descubierta Recursos Disponib. Recursos Comunicacin Recursos

Servidor Web

Descentralizado

- Clientes (i.e. usuarios) usan su navegador web para accesar pginas web en unos o ms sitios web. - El sitio Web es esttico para un dominio particular
Descubierta: centralizado, DNS Disponibilidad: disponible o no disponible Comunicacin: centralizado para un servidor web partcular

Napster: Intermedio
Usuario
Napster
Centralizado Descubierta Recurso Disponibilidad Recurso Comunicacin Recurso

Napster.com

Descentralizado

Clientes buscan a travs del sitio web Napster Descubierta: Centralizado a trves de un sitio web Disponibilidad: disponible o no disponible Comunicacin: descentralizado entre pares (compartidores de MP3)

Gnutella: Descentralizado
Gnutella
Centralizado Descubierta Recurso Disponib. Recurso Comunicacin Recurso

Descentralizado

Discovery: Descentralizado a travs de mensajes Gnutella (mecanismos ping/pong ) Disponibilidad: A menudo un camino alternativo a los recursos Comunicacin: punto a punto: descentralizado entre pares

Posicionamiento Middleware

1-22

Estructura General de un Sistema Distribuido como middleware.

Middleware y Software Abierto

1.23

En un Sistema Distribuido basado en middleware, los protocolos usados por cada capa de middleware deben ser los mismos, as como tambin las interfases que ellos ofrecen a las aplicaciones.

Clientes y Servidores

Interaccin general entre un cliente y un servidor.

Nivel de Procesamiento
The general organization of an Internet search engine into three different layers 1-28

La organizacin general de un motor de bsqueda en Internet en tres capas diferentes

Arquitecturas Multicapas (1)


Alternative client-server organizations (a) (e).
1-29

Organizaciones alternativas cliente-servidor (a) (e).

Arquitecturas Multicapas (2)


An example of a server acting as a client.
1-30

Un ejemplo de un servidor actuando como un cliente.

Arquitecturas Modernas
An example of horizontal distribution of a Web service.
1-31

Un ejemplo de distribucin horizontal de un Web Service.