Está en la página 1de 12

1

GENERALIDADES DE LOS SISTEMAS DISTRIBUIDOS

MARLON DANIEL ARIAS GUERRRERO

VICTOR DANIEL SÁNCHEZ MORENO

MANUEL HERNANDO ZAMUDIO MORA

JOSÉ VICENTE PALACIO HERNÁNDEZ

SISTEMAS DISTRIBUIDOS

UNIVERSIDAD COOPERATIVA DE COLOMBIA

BOGOTÁ

AGOSTO 2023
2

TABLA DE CONTENIDO

1. Un usuario llega a una estación de Transmilenio que no conoce, portando un PDA


capaz de conectarse a una red inalámbrica. .................................................................................... 3

2. ¿Cuáles son las ventajas y desventajas de HTML, URL y HTTP como tecnologías
de base para la consulta y visualización de información? .............................................................. 5

3. Tome World Wide Web como ejemplo para ilustrar el concepto de compartición de
recursos, cliente y servidor. ............................................................................................................. 6

4. Dé un ejemplo de URL. Enumere los componentes principales que conforman una


URL, indicando cómo se delimitan e ilustre cada uno a partir de un ejemplo. .............................. 8

5. Enumere los tres componentes de software principales que pueden fallar cuando un
proceso cliente invoca un método en un objeto servidor. ............................................................... 8

6. Varios servidores implican ciertos servicios. Explique por qué pueden transferirse
los recursos entre ellos. ................................................................................................................. 10

REFERENCIAS................................................................................................................ 12
3

1. Un usuario llega a una estación de Transmilenio que no conoce, portando un PDA


capaz de conectarse a una red inalámbrica. Sugiera cómo podría proporcionársele
al usuario información sobre los servicios locales y las comodidades en la estación,
sin necesidad de insertar el nombre de la estación o sus características. ¿Qué
dificultades técnicas hay que superar?

RTA: Se podría implementar un sistema basado en la geolocalización y la interacción


inalámbrica como:

Beacons de Geolocalización: Colocar beacons o dispositivos de geolocalización en


diferentes puntos clave de la estación. Estos beacons emiten señales Bluetooth de baja energía
(BLE) que pueden ser detectadas por el PDA del usuario cuando está cerca de ellos.

Aplicación Móvil o Página Web: El usuario debería tener una aplicación móvil o un
navegador web en su PDA. Esta aplicación estaría diseñada para detectar las señales de los beacons
y proporcionar información contextual en función de la ubicación del usuario.

Información Contextual: Cuando el PDA del usuario detecta una señal de un beacon en
la estación, la aplicación podría mostrar automáticamente información relevante sobre los
servicios y comodidades disponibles en esa área de la estación. Esto podría incluir horarios de
llegada de autobuses, ubicaciones de boleterías, baños, cafeterías, etc.

Contenido Dinámico: La información mostrada en la aplicación podría ser dinámica y


actualizarse según la hora del día, la demanda actual de servicios y cualquier cambio en la
configuración de la estación.

Conexión a Internet: El PDA del usuario debe tener acceso a Internet para que la
aplicación pueda descargar la información actualizada sobre la estación y los servicios locales.

Dificultades Técnicas a Superar:

Precisión de Geolocalización: La precisión de la geolocalización puede variar


dependiendo de la tecnología utilizada. La precisión insuficiente podría dificultar la identificación
precisa de la estación y afectar la relevancia de la información proporcionada.
4

Conexión y Ancho de Banda: Garantizar una conexión confiable y rápida en una estación
de TransMilenio puede ser un desafío debido a la posible congestión de la red inalámbrica,
especialmente en horas pico.

Diversidad de Dispositivos: Diferentes PDAs pueden tener capacidades de navegación


web y presentación de información variables. Asegurarse de que la información sea legible y útil
en una variedad de dispositivos podría ser complicado.

Contenido Actualizado: Mantener la información actualizada en tiempo real puede ser un


desafío. Los horarios y otros detalles pueden cambiar, y garantizar que el usuario obtenga
información precisa es esencial.

Seguridad: La seguridad de la red inalámbrica y la privacidad del usuario deben ser


consideradas. La transmisión de datos sensibles debe estar protegida.

Interfaz de Usuario: Diseñar una interfaz de usuario intuitiva y fácil de usar en pantallas
pequeñas puede ser complejo.

Compatibilidad de Navegadores: Diferentes PDAs pueden tener diferentes navegadores


web y capacidades de representación, lo que puede afectar la forma en que se muestra la
información.

En general, la propuesta implica la integración de tecnologías y servicios web para brindar


información útil y personalizada al usuario. Sin embargo, es importante abordar las dificultades
técnicas para garantizar una experiencia efectiva y sin problemas.

Las dificultades técnicas podrían incluir la precisión de la geolocalización a través de la


red inalámbrica y la necesidad de que la estación esté equipada con puntos de acceso Wi-Fi que
permitan la detección de la ubicación de los usuarios. Además, se requeriría un sistema robusto
para gestionar la base de datos de información de las estaciones y garantizar que la notificación
emergente sea relevante y actualizada.
5

2. ¿Cuáles son las ventajas y desventajas de HTML, URL y HTTP como tecnologías
de base para la consulta y visualización de información? ¿Son algunas de estas
tecnologías adecuadas como plataforma de cómputo Cliente / Servidor en
general?

RTA: Las ventajas que encontramos de HTML, URL y HTTP como tecnologías de bases
para la consulta y visualización de información son:

HTML: Tiene interactividad con el usuario incluyendo elementos interactivos utilizando


JavaScript y otros lenguajes de edición de páginas. Por otro lado, también tiene una buena
compatibilidad con la mayoría de navegadores y dispositivos compatibles con HTML asegurando
una experiencia gratificante al usuario.

URL: Tienen la característica de ser fáciles de recordar gracias a eso facilita la navegación
web. También proporcionan una forma adaptada para ubicar recursos en la web facilitando el
acceso a recursos específicos.

HTTP: Los HTTP pueden ampliar encabezados y otros métodos personalizados para
varios requisitos específicos. También incluye una especie de compatibilidad buena debido a que
casi todos los servidores web y navegadores son compatibles con HTTP.

Ahora las desventajas que encontramos de HTML, URL y HTTP como tecnologías de
bases para la consulta y visualización de información son:

HTML: Aunque puede llegar a ser interactivo puede quedarse corto porque, aunque
incluye características de diseño como el CSS en realidad el HTML no es muy ideal para diseños
de alta complejidad y para que el HTML obtenga funciones avanzadas como en este caso la
interactividad con el usuario depende de varios lenguajes lo cual lo convierte en algo más
complejo.

URL: Debido a que es un link con un nombre ya definido hacia una dirección no aporta
mucha información acerca del contenido al que el usuario será redireccionado. Se pueden generar
algunos cambios de ubicación que puede tener un recurso en línea por lo que una URL ya existente
podría simplemente llevar a enlaces dañados sin ninguna función.
6

HTTP: El HTTP por sí solo no cifra datos en tránsito por lo que puede haber problemas
de seguridad en el proceso. Teniendo en cuenta las solicitudes y respuestas HTTP del momento
puede generar latencia esto se refiere a problemas en la comunicación llegando a afectar tiempos
de carga.

Ahora respondiendo a la pregunta ¿Son algunas de estas tecnologías adecuadas como


plataforma de cómputo Cliente / Servidor en general?:

Si, efectivamente dichas tecnologías cumplen la función de ser plataformas de cómputo


cliente/servidor, por ejemplo, en el caso de URL el cliente utiliza navegadores web para solicitar
recursos específicos según la URL, luego el servidor recibe la solicitud basada en la URL y genera
el recurso solicitado teniendo en cuenta la ruta y los parámetros de la URL. Se debe tener en cuenta
que para que estas tecnologías sean óptimas para el usuario deben trabajar en conjunto incluso se
llegan a utilizar tecnológicas adicionales para otros temas como por ejemplo la interactividad por
la parte del cliente y luego por el lado del servidor el uso de bases de datos para almacenar y
recuperar información.

3. Tome World Wide Web como ejemplo para ilustrar el concepto de compartición
de recursos, cliente y servidor.

RTA: Podríamos definir que la World Wide Web funciona de la siguiente manera para esta
ocasión:

Compartición de Recursos: El WWW es una vasta colección de recursos en línea, como


páginas web, imágenes, videos y documentos son recursos que están disponibles en servidores
web de todo el mundo y son accesibles a través de navegadores web. Los usuarios pueden
compartir y acceder a estos recursos desde cualquier lugar conectado a Internet. La compartición
de recursos en el WWW permite a los usuarios acceder a información y contenido diverso y útil.
7

Cliente y Servidor: En el contexto del WWW, los términos "cliente" y "servidor" se


refieren a los roles desempeñados por las computadoras y dispositivos involucrados en la
interacción entre los usuarios y los recursos en línea:

Cliente: El cliente es un software, generalmente un navegador web, que se ejecuta en el


dispositivo del usuario. Su función es solicitar y presentar los recursos disponibles en los
servidores web. Cuando un usuario ingresa una URL en su navegador, el cliente envía una solicitud
al servidor correspondiente para obtener la página web solicitada.

Servidor: El servidor es una computadora que almacena y proporciona los recursos


solicitados por los clientes. Estos recursos pueden ser páginas web, archivos multimedia,
documentos, etc. Cuando el servidor recibe una solicitud de un cliente, procesa la solicitud y envía
la respuesta al cliente. La respuesta puede incluir la página web solicitada o los datos necesarios
para cargar la página correctamente.

Los clientes (navegadores web) son las herramientas que los usuarios utilizan para acceder
y solicitar recursos en línea.

Los servidores son las computadoras que almacenan y proporcionan los recursos
solicitados por los clientes.

Así es como se establece la interacción entre el cliente y el servidor en el sistema distribuido


del World Wide Web.

La interacción entre clientes y servidores se basa en el protocolo HTTP (Hypertext Transfer


Protocol) que permite la solicitud y entrega de recursos a través de Internet. La WWW demuestra
cómo la arquitectura cliente-servidor se aplica para permitir la compartición de recursos en un
sistema distribuido a gran escala.
8

4. Dé un ejemplo de URL. Enumere los componentes principales que conforman una


URL, indicando cómo se delimitan e ilustre cada uno a partir de un ejemplo.

RTA: Un ejemplo de una URL podría ser: www.google.com o www.wikipedia.org


Partes que componen una URL:

http://www.wikipedia.org/Diccionario/index.php

El http se refiere al protocolo puede ser http, https, ftp, etc. El protocolo se refiere a un
conjunto de reglas que definen como se comunica el servidor y el navegador.

El www.wikipedia.org sería el dominio, el subdominio y a la extensión de dominio el cual


proporciona información sobre una organización o empresa que posee la página web con dicho
nombre se utiliza para darle una identidad única en el servidor.

El /Diccionario/ es el camino o ruta donde se encuentra el recurso dentro del servidor


puede incluir subdirectorios separados por /.

Por último el /index.php sería el recurso se refiere el archivo o página web a la que se va
a acceder en este caso index.php puede variar a .htm, .html, etc.

Las URL pueden llegar a incluir muchas más partes, pero las principales son el protocolo,
el nombre de dominio y la ruta.

5. Enumere los tres componentes de software principales que pueden fallar cuando
un proceso cliente invoca un método en un objeto servidor. Proporcionando un
ejemplo de fallo de cada clase. Sugiera como pueden construirse los componentes
para que toleren sus fallos mutuamente.

RTA: Los tres componentes de software principales que pueden fallar cuando un proceso
cliente invoca un método en un objeto servidor son:
9

El cliente: El cliente puede fallar por una variedad de razones, como un error de software,
un problema de hardware o una interrupción de la red. Por ejemplo, el cliente podría enviar una
solicitud mal formada al servidor, o su sistema operativo podría fallar.

El servidor: El servidor también puede fallar por una variedad de razones, como un error
de software, un problema de hardware o un ataque de seguridad. Por ejemplo, el servidor podría
agotar su memoria o su disco duro podría fallar.

La red: La red que conecta al cliente y al servidor también puede fallar por una variedad
de razones, como una interrupción del suministro eléctrico o una falla de hardware. Por ejemplo,
un corte de energía podría desconectar al cliente del servidor.

Para que los componentes toleren sus fallos mutuamente, es necesario implementar
mecanismos de tolerancia a fallos en cada uno de ellos. Estos mecanismos pueden incluir:

Reintentos: Los clientes y servidores pueden intentar volver a ejecutar una solicitud si
falla la primera vez. Esto puede ayudar a superar los fallos temporales, como las interrupciones de
la red.

Conmutación por error: Los clientes y servidores pueden configurarse para que utilicen
diferentes instancias de cada componente en caso de que una de ellas falle. Esto puede ayudar a
garantizar que el sistema siga funcionando, incluso si un componente falla.

Almacenamiento de estado: Los clientes y servidores pueden almacenar datos de estado


en un lugar seguro, como una base de datos o un servidor de archivos. Esto puede ayudar a
recuperar los datos si un componente falla y pierde su estado.

A continuación, se presentan algunos ejemplos específicos de cómo se pueden implementar


estos mecanismos:

Un cliente puede configurarse para realizar tres intentos de enviar una solicitud al servidor.
Si la solicitud falla en los tres intentos, el cliente puede informar al usuario de un error.
10

Un servidor puede configurarse para utilizar dos instancias del mismo servicio. Si una
instancia falla, la otra instancia puede asumir el control de las solicitudes.

Un servidor de base de datos puede almacenar los datos de estado en una base de datos. Si
el servidor falla, la base de datos puede restaurar el estado del servidor.

La implementación de mecanismos de tolerancia a fallos puede ayudar a mejorar la


confiabilidad de los sistemas distribuidos. Sin embargo, es importante tener en cuenta que ningún
sistema es 100% fiable. Siempre existe la posibilidad de que ocurra un fallo que no pueda
recuperarse.

6. Varios servidores implican ciertos servicios. Explique por qué pueden transferirse
los recursos entre ellos. ¿Sería satisfactorio para los clientes la multidifusión de
todas las peticiones al grupo de servidores como medio de obtener la trasparencia
de movilidad para los clientes?

RTA: Los recursos pueden transferirse entre servidores por varias razones, entre ellas:

Eficiencia: La transferencia de recursos puede ayudar a mejorar la eficiencia del sistema,


distribuyendo la carga de trabajo entre varios servidores. Esto puede ayudar a evitar que un solo
servidor se sobrecargue y falle.

Resistencia: La transferencia de recursos puede ayudar a mejorar la resistencia del sistema,


permitiendo que los servidores se complementen entre sí. Esto puede ayudar a garantizar que el
sistema siga funcionando, incluso si un servidor falla.

Escalabilidad: La transferencia de recursos puede ayudar a escalar el sistema, agregando


nuevos servidores o recursos a medida que sea necesario. Esto puede ayudar a satisfacer la
creciente demanda de los clientes.

En cuanto a la multidifusión de todas las peticiones al grupo de servidores, esto no sería


satisfactorio para los clientes en la mayoría de los casos. Esto se debe a que la multidifusión puede
sobrecargar los servidores, especialmente si hay muchos clientes. Además, la multidifusión puede
reducir el rendimiento del sistema, ya que los servidores deben procesar cada petición varias veces.
11

Para obtener la transparencia de movilidad para los clientes, es necesario que los clientes
puedan conectarse a cualquier servidor del grupo y continuar con su trabajo. La multidifusión no
garantiza esto, ya que los clientes podrían estar conectados a un servidor que no pueda procesar su
solicitud.

Una forma más eficaz de obtener la transparencia de movilidad para los clientes es utilizar
un servicio de descubrimiento de servicios. Este servicio permite a los clientes encontrar los
servidores que ofrecen los servicios que necesitan. Los clientes pueden luego conectarse al
servidor más cercano o al servidor con el mejor rendimiento.

Además, los clientes pueden utilizar un mecanismo de equilibrio de carga para distribuir
su tráfico entre varios servidores. Esto ayuda a evitar que un solo servidor se sobrecargue y falle.

Al utilizar estos mecanismos, los clientes pueden obtener la transparencia de movilidad


que necesitan, sin sobrecargar los servidores ni reducir el rendimiento del sistema.

Aquí hay algunos ejemplos específicos de cómo los recursos pueden transferirse entre
servidores:

Un servidor de base de datos puede transferir datos a otro servidor si el primer servidor
está sobrecargado.

Un servidor de aplicaciones puede transferir un proceso a otro servidor si el primer servidor


se está quedando sin memoria.

Un servidor de archivos puede transferir un archivo a otro servidor si el primer servidor


está caído.
12

REFERENCIAS

• Hostinger. (s.f.). ¿Qué es HTML? Bases del Lenguaje de Marcado de Hipertexto.


Recuperado de https://www.hostinger.es/tutoriales/que-es-html/
• MDN Web Docs. (s.f.). ¿Qué es una URL? Aprende desarrollo web. Recuperado de
https://developer.mozilla.org/es/docs/Learn/Common_questions/What_is_a_URL
• Resumenea. (s.f.). ¿Cuáles son las ventajas y desventajas de HTTP? Recuperado de
https://resumenea.com/ventajas-y-desventajas/cuales-son-las-ventajas-y-
desventajas-de-http
• Alegsa. (s.f.). Definición de Ciberespacio. Recuperado de
https://www.alegsa.com.ar/Diccionario/C/26962.php#h1&gsc.tab=0
• Birman, K. P., & van Renesse, R. Tolerancia a fallos en sistemas distribuidos.
Pearson.
• Coulouris, G., Dollimore, J., & Kindberg, T. Distributed Systems: Concepts and
Design.
• Bonaventure, O. Computer Networking: Principles, Protocols and Practice.
• Gourley, D., & Totty, B. (20XX). HTTP: The Definitive Guide.
• "Distributed Systems: Principles and Paradigms" por Andrew S. Tanenbaum y
Maarten Van Steen:
• Tanenbaum, A. S., & Van Steen, M. (Año de publicación). Distributed Systems:
Principles and Paradigms. Pearson.
• "Distributed Systems: Concepts and Design" por George Coulouris, Jean Dollimore
y Tim Kindberg:
• Coulouris, G., Dollimore, J., & Kindberg, T. (Año de publicación). Distributed
Systems: Concepts and Design. [Editorial].
• "Designing Data-Intensive Applications" por Martin Kleppmann:
• Kleppmann, M. (Año de publicación). Designing Data-Intensive Applications.
O'Reilly Media.

También podría gustarte