Sie sind auf Seite 1von 9

SISTEMAS WEB Y DISTRIBUIDOS

PRCTICO #1: Resolver ejercicios del captulo 1 y 2 del libro Sistemas


Distribuidos.

PROFESOR: ALDO MEDINA


ESTUDIANTE: ADRIN AGERO

Encarnacin, 27 de agosto del 2.015


PRCTICO #1
FECHA: 27-08-15
Ejercicios del Captulo 1

1.1 Proponga cinco tipos de recursos hardware y cinco tipos de recursos software o
de datos que puedan compartirse ltimamente. Proponga ejemplos de su uso
compartido tal y como ocurre en la prctica en los sistemas distribuidos.
Hardware:
1. Impresoras: en una oficina existe un equipo de trabajo con 5 computadoras,
las cuales utilizan una sola impresora para la impresin de sus documentos.
2. Virtualizacin de escritorios: la empresa NComputing ofrece hardware y
software que permite conectar perifricos de los usuarios a una sola computadora
compartida.
3. HDD: Seagate 1TB Wireless Plus, posee tecnologa wifi que le permite estar
conectado a mltiples computadoras.
4. Monitor: es un recurso compartido por los programas, ejemplo personajes de
un videojuego.
5. Router: Al igual que el dispositivo anterior procesa mltiples peticiones de
recepcin y envo de mensajes para los procesos pero en este caso de mltiples
computadoras.
Software:
1. Sistema de base de datos: responde solicitudes de mltiples aplicaciones en
un solo computador.
2. Sistema de ficheros: debe ofrecer acceso a los archivos de manera eficiente
y controlada en conjunto con los dems componentes del S.O.
3. Fichero de configuracin: debe ofrecer acceso para diferentes procesos.
4. Objetos remotos, los cuales deben ser llamados a travs de paso de
mensajes.
5. Bibliotecas, procesos recurrentes que solicitan funcionalidades
1.2 Cmo podra sincronizarse los relojes de dos computadores unidos por una red
local, sin hacer uso de una referencia temporal externa? Qu factores limitaran la
precisin del procedimiento propuesto? Cmo podran sincronizarse los relojes de
un mayor nmero de computadores conectados a Internet? Discuta la precisin de
este procedimiento.
Una computadora podra brindarle su hora actual a la otra computadora a travs de la red.
Limitan la precisin de este mtodo los canales de transmisin del mensaje, l cual se
puede demorar, perder, retrasar. Podran sincronizarse utilizando un reloj de referencia
externo. Al ser Internet una red inmensa que ocurrira lo mismo que en el caso anterior pero
an de forma ms perjudicial. Para ello se defini el protocolo NTP [RFC 1305], el cual
considera la latencia de los mensajes.
1.3 Un usuario llega a una estacin de ferrocarril que no conoce, portando un PDA
capaz de conectarse a una red inalmbrica. Sugiera cmo podra proporcionrsele al
usuario informacin sobre los servicios locales y las comodidades en la estacin, sin
necesidad de insertar el nombre de la estacin o sus caractersticas. Qu
dificultades tcnicas hay que superar?
Y podramos realizar una consulta a alguna BD sobre la posicin GPS de las estaciones de
ferrocarriles y consultar la posicin del usuario con los sensores de geolocalizacin
incorporados en el dispositivo PDA, realizar un clculo para determinar cul de las
estaciones es la ms cerca y mostrar dicha informacin. Si el dispositivo no cuenta con GPS
podra simplemente consultar alguna de los sitios web que proporcionan informacin acerca
de la posicin GPS de los router.

La primera tcnica tiene el inconveniente que debe esperar a tener una lectura clara de los
satlites para determinar su posicin. La segunda es ms eficiente pero debemos confiar en
que los datos provedos por estos sitios est actualizada y es correcta.
1.4 Cules son las ventajas y desventajas de HTML, URL y HTTP como tecnologas
de base para la consulta y visualizacin de informacin? Son algunas de estas
tecnologas adecuadas como plataforma de cmputo cliente-servidor en general?
HTML tiene como ventajas el ser simple y adaptable a casi todo tipo de dispositivo (arduino,
tablets, smartphone, computadoras, etc), sin embargo como su propsito era solo el de
brindar una estructura al texto no provee de mayor informacin semntica sobre su
contenido.
URL tiene la ventaja de ser tambin muy simple y permite localizar recursos de forma
rpida. No tiene desventajas salvo que su actualizacin requiere de interaccin humana
siempre y cuando no se disponga de un software que automatice este proceso, y de usarlo
incorrectamente se podra dejar link con enlaces rotos.
1.5 Tome World Wide Web como ejemplo para ilustrar el concepto de comparticin de
recursos, cliente y servidor.
Los recursos en World Wide Web y otros servicios se direccionan mediante URL.
Que significan las siglas URL? Proporcione ejemplos de tres tipos de recursos web
a los que pueda darse un nombre URL:
Si tomamos como ejemplo la WWW, que no es
sino una plataforma llena de archivos e
hipertextos, podemos observar que los
navegadores son los clientes, mientras que los
servidores responden con un recurso a una
solicitud de URL a travs de la red. Significa
uniform resource locator o localizador
uniforme de recursos.
mailto:adrian@gmail.com (mail)
ftp: ftp.download.com/adrian.rar (FTP)
http://hola.com (HTTP)

1.6 De un ejemplo de URL.


http://www.hola.com/search/?q=a (HTTP)
Enumerelos tres componentes principales de un URL, indicando cmo se delimitan e
ilustre cada uno a partir de un ejemplo. Hasta qu lmite es transparente a la
ubicacin en URL?
a. Dominio
b. Nombre o path del recursos
c. Parmetros
Ejemplo: Protocolo://mquina.dominio[:puerto]/[recurso]/[?parmetros]
Se delimitan como sigue: servidor -> recurso -> parmetros de operacin
Primero se ubica el ordenador que provee el servicio o recurso, posterior se identifica el
recurso o servicio solicitado y por ltimo en el mbito de ejecucin del programa se emplean
los parmetros.
La URL es extremadamente transparente permite, apoyado en DNS, que una mquina
predeterminada responda la solicitud, podra ser otra. El recurso podra ser cualquier tipo de
programa que genera algn cdigo entendible por el cliente y finalmente es posible
configurar su comportamiento con los parmetros.
1.7 Un programa servidor escrito en un lenguaje (por ejemplo C++) proporciona un
objeto BURBUJA al que se pretende que accedan clientes que pudieran estar escritos
en un lenguaje diferentes (por ejemplo Java). Los computadores clientes y servidores
pueden tener un hardware diferente, pero todas estn conectadas a Internet. Describa
los problemas debidos a cada uno de los cinco aspectos de la heterogeneidad que
necesitan resolverse para posibilitar que un objeto cliente invoque un mtodo sobre
el objeto servidor.
Problemas de heterogeneidad del hardware: debido a que los datos son representados de
diferentes formas en diferentes arquitecturas de hardware.
Problemas de heterogeneidad del S.O: debido a que el acceso a los datos y llamadas al
sistema varan de acuerdo al sistema operativo usado.
Problemas de heterogeneidad con el lenguaje: El uso de lenguajes de programacin
diferentes evita que el mismo objeto sea portable, porque ambos lenguajes pueden tener
representaciones diferentes del mismo y no pueden trabajar con el cdigo mvil tampoco.
Problemas de heterogeneidad en la red: al transmitirse los datos por Internet, este pasa a
travs de muchos dispositivos diferentes que lo modifican y almacenan o reenvan de
diferente forma por lo que es necesaria que el mensaje enviado se mantenga fidedigno al
que se envi.
Problemas de heterogeneidad de mensaje en si mismo, el mensaje debe ser comprensible
por ambos sistemas.

1.8 Un sistema distribuido abierto permite la adicin de nuevos servicios de


comparticin de recursos como el objeto BURBUJA del Ejercicio 1.7 y que sean
accesibles por una variedad de programas cliente. Discuta en el contexto de este
ejemplo, hasta dnde las necesidades de extensibilidad difieren de las de
heterogeneidad
Cuando hablamos de extensibilidad nos referimos a la capacidad que tiene el sistema de
agregar nuevas funcionalidades como opciones o servicios mientras que hablamos de
heterogeneidad nos referimos a la capacidad que tiene el sistema para soportar nuevos y
diferentes sistemas de transmisin o clientes.
1.9 Suponga que las operaciones del objeto BURBUJA estn separadas en dos
categoras: operaciones pblicas disponibles para todos los usuarios y operaciones
protegidas disponibles slo para ciertos conocidos por un nombre concreto.
Presente todos los problemas relacionados con la operacin de garantizar que solo
los usuarios con nombre conocido puedan acceder a la operacin protegida.
Suponiendo que el acceso a una operacin protegida da informacin que no debiera
revelarse al resto de los usuarios. Qu problemas aparecen?
Aparecen problemas de seguridad, se debe prever un sistema de identificacin de usuarios
para garantizar que los usuarios que acceden a la parte sensible de nuestro sistemas estn
autorizados a ello. Garantizar este reconocimiento supone una mayor carga para el sistema
como encriptacin y una gestin de usuarios.
1.10 El servicio INFO admite un conjunto de recursos potencialmente muy grande,
cada uno de los cuales puede ser accedido por usuarios de Internet mediante una
clave (en forma de <string>). Discuta una aproximacin al diseo de los nombres de
los recursos que logra la mnima prdida de prestaciones segn crece el nmero de
recursos en el servicio. Sugiera cmo puede implementarse el servicio INFO para
evitar cuellos de botella en las prestaciones cuando el nmero de usuarios se vuelve
muy grande.
Los recursos debern utilizar un nmero entero ID que facilite su identificacin y rpida
obtencin por parte del servicio. A medida que crece el nmero de usuarios se deber
pensar en implementar una replicacin de la BD para as duplicar aproximadamente el
nmero de respuesta.
1.11 Enumere los tres componentes software principal que pueden fallar cuando un
proceso cliente invoca un mtodo en un objeto servidor, proporcionando un ejemplo
del fallo en cada caso. A qu dimensin son independientes unas de otras estas
fallas? Sugiera cmo construirse los componentes para tolerar sus fallos
mutuamente.
Fallo de sistema, un sistema operativo puede fallar debido a una sobrecarga de pedidos en
su cola, como en un ataque de denegacin de servicio.
Fallo de proceso servidor, una aplicacin de base de datos pueda fallar debido a que su
disco se lleno, la aplicacin no debe dejar de funcionar, debe utilizar la siguiente BD
disponible.
Fallo del proceso cliente, si el cliente deja de existir, el servidor debe ser tolerante a esta
falla.
Cada una es independiente de la otra. Y debe existir redundancia y control y recuperacin
ante errores.

1.12 Un servidor mantiene un objeto de informacin compartida tal como el objeto


BURBUJA del Ejercicio 1.7. Argumente en pro y en contra de si admitir que las
peticiones de los clientes se ejecuten concurrentemente en el servidor. En este caso,
de un ejemplo de posibles interferencias que pudiera aparecer entre las
operaciones de diferentes clientes. Sugiera cmo puede prevenirse tal interferencia.
Los pro con respecto a permitir las peticiones concurrentes es la mejora en performance; la
desventaja es que se debe agregar mtodos de control para evitar inconsistencias al utilizar
el objeto. Un ejemplo puede ser, la modificacin de un archivo por dos procesos
simultneos puede ocasionar que este quede corrupto porque mientras uno an no ha
terminado de escribir, el otro tambin escribe. Solucin usar Semforos u otro sistema de
sincronizacin.
1.13 Varios servidores implementan cierto servicio. Explique porqu pueden
transferirse los recursos entre ellos. Sera satisfactorio para los clientes la
multidifusin de todas las peticiones al grupo de servidores como una medio de
obtener la transparencia en la movilidad para los clientes?
Pueden transferirse los recursos a travs de la red y aplicando semforos u otros mtodos.
Si sera satisfactorio porque de esa forma los servidores podran auto-organizarse para
responder de la forma ms eficiente las peticiones. Por ejemplo el servidor ms cercano
responder la solucin.

Ejercicios Capitulo 2
2.1 Describa e ilustre la arquitectura cliente-servidor de una o ms aplicaciones de
Internet (por ejemplo la web, email o foros de noticias).

Mail: El cliente de correo, solicita al servidor MTA enviar un mail. El servidor recibe el mail y
a su vez lo traslada al MTA al que corresponda ese mail, finalmente un servidor POP, acta
de cliente y pregunta al servidor MTA si existe correo nuevo, este lo copia. Cuando el cliente
de correo del destinatario consulte a su POP/IMAP recuperar el correo enviado.
2.4 Un motor de bsqueda es un servidor web que ofrece a los clientes la oportunidad
de buscar en ciertos ndices almacenados y (concurrentemente) lanzar varios
escaladores web para construir y actualizar estos ndices. Cules son los requisitos
de sincronizacin entre estas actividades concurrentes?
Debe estar sincronizados de tal forma que los escaladores actualicen los ndices mientras
los clientes no solicitan una bsqueda, al solicitarla se puede realizar sta. Pero siempre
balanceando ambas actividades.
2.7 De ejemplos de aplicaciones donde sea beneficiosos emplear cdigo mvil.
Para validar un formulario, el servidor adems de enviar el formulario enva cdigo js para
validar del lado del cliente ese mismo formulario y as no tener que responderle si comete
algn error, que era evitable.

2.9 Distinga entre bfer y cache.


Buffer: es un espacio de memoria, en el que se almacenan datos de manera temporal,
normalmente para un nico uso (generalmente utilizan un sistema de cola FIFO); su
principal uso es para evitar que el programa o recurso que los requiere, ya sea hardware o
software, se quede sin datos durante una transferencia (entrada/salida) de datos irregular o
por la velocidad del proceso.
Cach: es la memoria fsica de acceso rpido de una computadora, que guarda
temporalmente los datos recientemente procesados.
Diferencia: Una memoria cach puede ser usada a veces como un bfer, y viceversa. Sin
embargo, una cach opera con el supuesto de que los mismos datos van a ser utilizados
mltiples veces, que los datos escritos sern ledos en un periodo corto de tiempo, o
teniendo en cuenta la posibilidad de mltiples lecturas o escrituras para formar un nico
bloque ms grande. Su premisa bsica es reducir los accesos a los almacenamientos de
nivel ms bajo, los cuales son bastante lentos. La cach tambin es normalmente una capa
de abstraccin que est diseada para ser invisible.
2.10 De algunos ejemplos de fallos en el hardware y el software de un sistema
distribuido que puedan o no ser tolerados mediante el uso de redundancia. En qu
punto podemos asegurar que el empleo de redundancia, cuando sea adecuado, hace
que el sistema sea tolerante frente a fallos?
Para casos en que un servidor se queda sin conexin de red, un disco se avera o una
computadora falla por la temperatura. La redundancia posibilita que el sistema sea tolerante
a fallas, sin el mucho datos se perderan irremediablemente.

Bibliografa
Sistemas Distribuidos, Colouris

Das könnte Ihnen auch gefallen