1. 1
Arquitecturas de
Sistemas Distribuidos
El siguiente documento presenta una breve descripción
de algunas de las arquitecturas de sistemas distribuidos.
Graciella del C. Andrade Santana
09/02/2010
3. 3
Sistemas Distribuidos
Un sistema distribuido es una colección de computadoras independientes o autónomas
enlazadas por una red y soportadas por un software que hace que aparezca ante los
usuarios del sistema como una única computadora.
En general, se podría ver a un sistema distribuido como la unión de una tecnología de red
y el uso de potentes máquinas multiprocesadores.
Cuando se vaya a diseñar un sistema distribuido se debe de considerar las siguientes
características: compartición de recursos, apertura, concurrencia, escalabilidad, tolerancia
a fallos y transparencia.
Ventajas de Sistemas Distribuidos
y Al usar un SD se logra compartir información así como dispositivos periféricos
entre varios usuarios.
y Los SD permiten dividir las cargas de trabajo entre diferentes computadoras de
manera más eficaz.
y Cuando un nodo de procesamiento falla, el sistema en general sigue funcionando.
y Ejecución concurrente de procesos.
Desventajas de Sistemas Distribuidos
y Las redes de comunicación, pueden llegar a perder mensajes, latencia de las
comunicaciones o saturación de mensajes.
y Vulnerabilidad que puede sufrir la información que puede llegar a estar disponible
para un gran número de usuarios del sistema.
y Requerimientos de mayores controles de procesamiento y acceso.
y Administración más compleja.
y Costos.
4. 4
Arquitecturas de Sistemas Distribuidos
Arquitectura Cliente/Servidor
El modelo cliente-servidor es el modelo más conocido y más ampliamente adoptado en la
actualidad. En éste modelo hay dos tipos de procesos, los clientes son procesos que
hacen peticiones de servicio y los servidores proveen esos servicios.
Funciones del Cliente
y Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en la
comunicación.
y Espera y recibe las respuestas del servidor.
y Por lo general, puede conectarse a varios servidores a la vez.
y Normalmente interactúa directamente con los usuarios finales mediante una
interfaz gráfica de usuario.
Funciones del Servidor
y Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempeñan
entonces un papel pasivo en la comunicación (dispositivo esclavo).
y Tras la recepción de una solicitud, la procesan y luego envían la respuesta al
cliente.
y Por lo general, aceptan conexiones desde un gran número de clientes (en ciertos
casos el número máximo de peticiones puede estar limitado).
y No es frecuente que interactúen directamente con los usuarios finales.
Ventajas
y Sencillez, únicamente se necesita la ubicación del servidor.
y Mejor aprovechamiento de la potencia de cómputo (Repartición del trabajo).
y Reducción del tráfico en la red.
y Opera bajo sistemas abiertos.
y Facilita el uso de interfaces gráficas variadas y versátiles.
5. 5
Arquitectura Peer-to-Peer (P2P)
Un sistema de peer-to-peer se caracteriza por ser un sistema distribuido en el que todos
los nodos tienen las mismas capacidades y responsabilidades, y en el que toda la
comunicación es simétrica. Las redes peer-to-peer aprovechan, administran y optimizan el
uso del ancho de banda de los demás usuarios de la red por medio de la conectividad
entre los mismos, obteniendo más rendimiento en las conexiones y transferencias que
con algunos métodos centralizados convencionales, donde una cantidad relativamente
pequeña de servidores provee el total del ancho de banda y recursos compartidos para un
servicio o aplicación.
Sus características son las siguientes: Escalabilidad, Robustez, Descentralización,
Anonimato, Seguridad y Costes repartidos.
Ventajas
y Los procesos tiene un rol similar, aunque pueden asumir un rol cliente/servidor en
ciertos momentos.
y Mejora la tolerancia a fallos y la escalabilidad.
Desventajas
y Difícil de coordinar.
6. 6
Arquitectura Servidor Proxy
Un Proxy es un servidor intermediario que acepta peticiones http de clientes u otros
intermediarios y genera a su vez peticiones hacia otros intermediarios o hacia el servidor
web destino. Actúa como servidor del cliente y como cliente del servidor; realiza un cierto
tipo de funciones a nombre de otros clientes en la red para aumentar el funcionamiento de
ciertas operaciones, también sirve de seguridad, esto es, tiene un Firewall. Permite
administrar el acceso a internet en una Red de computadoras permitiendo o negando el
acceso a diferentes sitios Web.
Características principales
y Compartir la conexión a Internet para todos los contenidos.
y Almacenamiento de las páginas visitadas acelerando las conexiones a las páginas
visitadas.
y Conexiones compartidas equitativamente entre los usuarios reduciéndose así la
espera.
y Ahorro de ancho de banda de Internet.
y Control de contenidos visitados.
y Establecimiento de listas negras de sitios de internet.
y Bloqueo de direcciones IP.
y Denegación de archivos no permitidos, posibles focos de infección de virus.
y Control de usuarios que pueden acceder a Internet.
y Evitar que los recursos de la empresa no sean usados para fines no profesionales.
y El usar un Servidor Proxy aumenta la seguridad de nuestra red, protegiéndola
contra posibles intrusiones.
7. 7
Arquitectura Agentes Móviles
Los agentes móviles son programas de software capaces de viajar por redes de
computadoras, como Internet, de interactuar con hosts, pedir información a nombre de un
usuario y regresar a su lugar de origen una vez que ha realizado las tareas especificadas
por un usuario. Creado en un ambiente de ejecución, el agente puede transportar su
estado y código a otro contexto en donde reanudará la ejecución. Estos agentes
aprovechan los recursos del nodo destino en beneficio del nodo que los envió,
negociando y cerrando tratos en su nombre ó utilizando servicios remotos. Un agente
móvil tiene capacidad para decidir a qué servidores moverse y puede moverse a uno o
más servidores. Es una extensión del modelo cliente/servidor.
Algunos de los campos idóneos en donde se pueden aplicar los agentes móviles son los
siguientes: procesamiento en paralelo, comercio electrónico, asistencia personal,
recuperación de información distribuida, servicios de redes y telecomunicaciones,
aplicaciones de software para grupos, monitoreo y notificación, y diseminación de
información.
Ventajas
y Permiten el cómputo asíncrono y autónomo.
y Son naturalmente heterogéneos.
y Proporcionan ambientes robustos y a prueba de fallas.
y Reducen el tráfico de red.
y Favorecen el procesamiento en paralelo.
y Mantienen comunicación punto a punto.
y Pueden operar sin conexión.
y Ejecución asíncrona de tareas.
Desventajas
y Cuestiones de seguridad.
y Limitaciones en cuanto a los lenguajes de programación para su diseño.
8. 8
Referencias
y Asociación de Usuarios de GNU/Linux de Castilla y León (2003). Introducción a los
sistemas distribuidos [en línea]. Castilla y León: J. Oscar Rojo. Recuperado el 07 de
febrero de 2010, de http://serviciosva.itesm.mx/cvr/investigacion/doc0142.htm.
y M.C. Juan Carlos Olivares Rojas. Unidad I Fundamentos de Sistemas Distribuidos [en
línea]. Recuperado el 07 de febrero de 2010, de
http://antares.itmorelia.edu.mx/~jcolivar/courses/sd107v/sd1_u1.pdf.
y Prof. José A. Rodríguez Mondéjar. Arquitectura de Sistemas Distribuidos [en línea].
Recuperado el 07 de febrero de 2010, de
http://www.dea.icai.upcomillas.es/jarm/Asignaturas/Doc_SistemasDistribuidos/3SDArquite
ctura.pdf.
y Luis Bernal (2008, 24 de mayo). Arquitectura de Sistemas Distribuidos [en línea].
Recuperado el 07 de febrero de 2010, de http://www.luisbernal.es/descargas/f/INFasd.pdf.
y Griselda Alejandra Chevalier Dueñas (2000, 23 de mayo). Agentes móviles para
recuperación personalizada de información. [En línea]. Puebla, México. Recuperado el 07
de febrero de 2010, de
http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/chevalier_d_ga/
y LinuxCentro.net. Software Libre y GNU/Linux. (2007, 22 de febrero). Servidor PROXY. [En
línea]. Recuperado el 08 de febrero de 2010, de
http://www.linuxcentro.net/linux/staticpages/index.php?page=ServidorPROXY.
y WIKIPEDIA, La enciclopedia libre (2010, 02 de febrero). Cliente ± Servidor. [En línea].
Recuperado el 08 de febrero de 2010, de http://es.wikipedia.org/wiki/Cliente-servidor.
y WIKIPEDIA, La enciclopedia libre (2010, 29 de enero). Peer ± to - Peer. [En línea].
Recuperado el 08 de febrero de 2010, de http://es.wikipedia.org/wiki/Peer-to-peer.
y WIKIPEDIA, La enciclopedia libre (2010, 24 de enero). Servidor. [En línea]. Recuperado el
08 de febrero de 2010, de http://es.wikipedia.org/wiki/Servidor.