Está en la página 1de 4

Instituto Tecnológico Superior De Coatzacoalcos

Ingeniería En Sistemas Computacionales

Alumno: Moreno Torres Juana

Materia: Sistemas Distribuidos

Maestro: Ing. Cristian Iván Martínez González

Matricula:14082108

Semestre:9

Grupo: B

Actividad: Investigación de los desafíos de los sistemas distribuidos


1.2 Desafíos de los Sistemas Distribuidos
Heterogeneidad
Se refiere a la variedad y diferencia que podemos encontrar entre los componentes de un
sistema distribuido, dicha heterogeneidad no solo aplica al tipo de redes y al hardware de
los sistemas operativos, lenguajes de programación e implementaciones en las que
trabajan los diferentes desarrolladores. En los sistemas distribuidos existe heterogeneidad
en muchos niveles:

 En redes: son distintos protocolos de red


 Los lenguajes de programación: en la representación de las estructuras de datos,
acceso a métodos, etc.
 Implementación: adopción de estándares.
Middleware
Es una capa de software que asiste a una aplicación para interactuar o comunicarse con
otras aplicaciones, redes, hardware y sistemas operativos. Simplifica el trabajo de los
programadores en la compleja tarea de generar las conexiones que son necesarias en los
sistemas distribuidos, los Middleware, son elementos software que permiten una
abstracción de la programación y el enmascaramiento de la heterogeneidad subyacente
sobre las redes. También el middleware proporciona un modelo computacional uniforme.
Extensibilidad
Permite añadir al sistema nuevas características y servicios de forma dinámica. Para que
la extensibilidad se pueda llevar acabo, es importante que las interfaces de software estén
bien documentadas y estandarizadas, así como también disponibles para los
desarrolador3s de software. Es la característica que determina si el sistema puede
extenderse de varias maneras. Un sistema puede ser abierto o cerrado con respecto a
extensiones de hardware o de software. Para lograr la extensibilidad es imprescindible que
las interfaces clave sean publicadas.
Los Sistemas Distribuidos Abiertos pueden extenderse a nivel de hardware mediante la
inclusión de computadoras a la red y a nivel de software por la introducción de nuevos
servicios y el re implementación de los antiguos. Otro beneficio de los sistemas abiertos es
su independencia de proveedores concretos.

Seguridad
La seguridad de la información es todo lo que concierne a que no ocurrirán cosas malas
con los mensajes que envían los clientes para solicitar información a un servidor y por
supuesto, con la información que estos reciben como respuesta a sus peticiones.

 Confidencialidad: consiste en el manejo privado de la información y protección


para que no sea accedida por usuarios no autorizados.
 Autenticación: capacidad de asegurar la identidad de un usuario.
 Integridad: asegura que la información que empleamos no ha sido manipulada,
alterada o corrompida.
 No repudio: proporciona protección contra la interrupción por parte de alguna de
las identidades implicadas en la comunicación, de haber participado en toda o
parte de la comunicación.

Escalabilidad
Es un sistema escalable si conserva su efectividad cuando ocurre un incremento
significativo en el número de recursos y en el número de usuarios.

Tolerancia a fallos
El fallo tanto de hardware como software es algo inevitable, y por más confiable que pueda
parecer algún componente, por eso siempre es importante estar preparado para cuando
este falle.

 Tolerancia de fallos: los programas clientes de los servicios pueden diseñarse para
tolerar ciertos fallos. Esto implica que los usuarios tendrán también que tolerarlos.
 Recuperación de fallos: implica el diseño de software en el que, tras una caída del
servidor, el estado de los datos puede reponerse o retractarse (rollback) a una
situación anterior.

Concurrencia
El control de concurrencia trata con los problemas de aislamiento y consistencia del
procedimiento de transacciones. Existe la posibilidad de acceso concurrente a un mismo
recurso. La concurrencia en los servidores se puede lograr a través de threads. Cada objeto
que represente un recurso compartido debe responsabilizarse de garantizar que opera
correctamente en un entorno concurrente. Para que un objeto sea seguro en un entorno
concurrente, sus operaciones deben sincronizarse de forma que sus datos permanezcan
consistentes.

 Algunos objetos deberán reimplementarse para trabajar correctamente en entornos


distribuidos
 Servidores multihilo
 Sincronización mediante semáforos u otros mecanismos

Transparencia
Se dice que un sistema distribuido es transparente, cuando es capaz de presentarse ante
los usuarios y aplicaciones como si fuese un sistema que se ejecuta en un solo equipo, y
no como un sistema cuyos procesos y recursos están distribuidos físicamente en varios
equipos.

 Transparencia de acceso: permite acceder a los recursos locales y remotos


empleando operaciones idénticas.
 Transparencia de ubicación: permite acceder a los recursos sin conocer su
localización.
 Transparencia de concurrencia: permite que varios procesos operen
concurrentemente sobre recursos compartidos sin interferencia mutua.
 Transparencia de replicación: permite replicar los recursos sin que los usuarios y los
programadores necesiten su conocimiento.
 Transparencia frente a fallos: permite ocultar fallos.
 Transparencia de movilidad: permite la reubicación de recursos y clientes en un
sistema sin afectar la operación de los usuarios y los programas.
 Transparencia de rendimiento: permite reconfigurar el sistema para mejorar el
desempeño según varíe su carga.
 Transparencia al escalado: permite al sistema y a las aplicaciones expandirse en
tamaño sin cambiar la estructura del sistema o los algoritmos de aplicación.

También podría gustarte