Está en la página 1de 18

Formas distintas de organizar n computadoras

La organización de cierta cantidad de computadoras se puede realizar usan-

do alguno de los casos de los siguientes sistemas operativos:

• Sistema operativo de red.

• Sistema operativo distribuido.

• Sistema operativo de multiprocesamiento.

Sistema operativo de red


Un sistema operativo de red (NOS) es un
software que permite la interconexión de
ordenadores para poder acceder a los servicios
y recursos, hardware y software creando redes
entre ordenadores, está diseñado
principalmente para soportar estaciones de
trabajo u ordenadores personales, el software
que hay detrás de un NOS permite que varios
dispositivos de una red se comuniquen y
compartan recursos entre sí.

La composición principal de un hardware que utiliza un NOS incluye varios ordenadores, impresora y dos
servidores, uno de ellos para archivos con una red local que los conecta entre sí.

La función del NOS es proporcionar servicios y características básicas de red que soporten múltiples
solicitudes de entrada simultáneamente para entornos multiusuarios.
¿Qué componentes forman un sistema operativo de red?

El sistema operativo de red está diseñado por componentes esenciales que permiten el funcionamiento del
mismo.

Clientes: Se tratan de ordenadores que cuentan con un sistema operativo mono compuesto que tiene
acceso a conectarse a un servidor, por lo que, lo clientes son los equipos usados para hacer obtener los
diferentes recursos que ofrece una red.

Servidores: Son los ordenadores que alojan el sistema operativo de red y que permiten su administración.
Los servidores cuentan con todos los recursos necesarios para utilizar, gestionar y compartir él NOS con
otros clientes o incluso con otros servidores

Dominios: Se trata del término empleado para referirse a la gestión de los diferentes equipos conectados a
una red y que al mismo tiempo están validados para ser gestionados de forma centralizada.

Tipos de sistemas operativos de red

Existen dos tipos básicos de sistemas operativos de red, él NOS peer-to-peer y él NOS cliente/servidor:

-Los sistemas operativos de red peer-to-peer permiten a los usuarios compartir recursos de red guardados
en una ubicación de red común y accesible.

-Los sistemas operativos de red cliente/servidor proporcionan a los usuarios acceso a los recursos a través
de un servidor.

Según el sistema operativo:

Los sistemas operativos de red pueden clasificarse de diferentes formas, pero lo más común es clasificarlo
según el sistema operativo de base:

Windows: Los de tipo desarrollados por Microsoft, se caracterizan por ofrecer a sus usuarios una buena
interoperabilidad con otros tipos de NOS. Ofreciendo también una diversidad de servicios como
administración de equipos de impresión, mensajería, establecimiento de dominios y protocolos de
seguridad.
Apple: Los softwares desarrollados por Apple ofrecen una diversidad de servicios, aunque algo más
limitados en su interopera labilidad en redes mixtas.

UNIX: Son los distintos softwares desarrollados para Linux, en especial para las distribuciones de Ubuntu y
Debian. Ofrecen un ecosistema de desarrollo de software libre, permiten una buena cantidad de servicios
tanto para clientes como para servidores.

NetWare: Desarrollado por Novell, su principal ventaja es que mantienen un buen acceso a base de datos
de archivos, ofreciendo seguridad y estabilidad.

Características de los sistemas operativos de red

Las características más genéricas de los sistemas operativos en red son:

 Conectar todos los equipos y recursos de la red.


 Gestión de usuarios centralizada.
 Proporcionar seguridad, controlando el acceso a los datos y recursos. Debe validar los accesos
(claves, certificados, sistemas biométricos…etc.) y aplicar las políticas de privacidad.
 Coordinar las funciones de la red incluso con las propias del equipo.
 Compartir recursos, llevar a cabo la coordinación y los privilegios a la hora de compartir. Mejorando
así, la utilización de los recursos.
 Permite monitorizar y gestionar la red y sus componentes.

Ventajas

 Fácil de instalar y configurar.


 El costo de instalación es bajo.
 No es necesario ningún software especializado.
 El intercambio de información y recursos es rápido y fácil.

Desventajas

 El rendimiento de las computadoras autónomas puede no ser tan bueno cuando se comparten
algunos recursos.
 No existe una gestión centralizada.
 Es menos seguro.
 No tiene funcionalidades de respaldo.
 No hay un sistema de almacenamiento centralizado.
Sistema operativo distribuido
Un sistema distribuido es un conjunto de programas
informáticos que utilizan recursos computacionales en
varios nodos de cálculo distintos para lograr un objetivo
compartido común. Este tipo de sistemas, también
denominados "computación distribuida" o "bases de
datos distribuidas", usan nodos distintos para
comunicarse y sincronizarse a través de una red común.

Estos nodos suelen representar dispositivos de hardware


físicos diferentes, pero también pueden representar
procesos de software diferentes u otros sistemas
encapsulados recursivos. La finalidad de los sistemas
distribuidos es eliminar los cuellos de botella o los puntos
de error centrales de un sistema.

¿Qué componentes forman un sistema operativo distribuido?

El desarrollo de un sistema distribuido complejo requiere el uso de las siguientes funciones y servicios:

 Servicios de comunicación.
 Sistemas de archivos.
 Servicio de nombres.
 Servicios de sincronización y coordinación.
 Memoria compartida distribuida.
 Gestión de procesos.
 Servicio de seguridad.
El sistema operativo distribuido está diseñado por componentes esenciales que permiten el
funcionamiento del mismo:

Recursos compartidos: los sistemas distribuidos pueden compartir hardware, software o datos.

Procesamiento simultáneo: varias máquinas pueden procesar la misma función a la vez.

Escalabilidad: la capacidad computacional y de procesamiento puede escalarse hacia arriba según sea
necesario cuando se añaden máquinas adicionales.

Detección de errores: los errores se pueden detectar más fácilmente.

Transparencia: un nodo puede acceder a otros nodos del sistema y comunicarse con ellos.

Tipos de sistemas operativos distribuido

Puede ser que este conjunto de procesadores este en un equipo o en diferentes, en este caso es
trasparente para el usuario, existen dos esquemas básicos:

Sistemas fuertemente acoplados: Comparte la memoria y un reloj global, cuyos tiempos de acceso son
similares para todos los procesadores.

Sistema débilmente acoplado: Los procesadores no comparten ni memoria ni reloj, ya que cada uno
cuenta con su memoria local.

Entre los diferentes sistemas operativos distribuidos que existen tenemos los siguientes Sprite, Solaris-MC,
Mach, Chorus, Spring, Anoeba, Taos, etc.

Características de los Sistemas Operativos distribuidos

Un sistema distribuido es un entorno informático que abarca múltiples dispositivos, coordinando sus
esfuerzos para completar un trabajo de forma mucho más eficiente que si fuera con un solo dispositivo.

 Colección de sistemas autónomos capaces de comunicación y cooperación mediante interconexiones


hardware y software
 Objetivo clave: la transparencia
 Generalmente proporcionan medios para la compartición global del recurso.
Ventajas

 Una de las ventajas de los sistemas distribuidos es la economía, pues es mucho más barato, añadir
servidores y clientes cuando se requiere aumentar la potencia de procesamiento.
 El trabajo en conjunto. Por ejemplo: en una fábrica de ensamblado, los robots tienen sus CPUs
diferentes y realizan acciones en conjunto, dirigidos por un sistema distribuido.
 Tienen una mayor confiabilidad. Al estar distribuida la carga de trabajo en muchas máquinas la falla
de una de ellas no afecta a las demás, el sistema sobrevive como un todo.
 Capacidad de crecimiento incremental. Se puede añadir procesadores al sistema incrementando su
potencia en forma gradual según sus necesidades. Con respecto a PCs Independientes:
 Se pueden compartir recursos, como programas y periféricos, muy costosos. Ejemplo: Impresora
Láser, dispositivos de almacenamiento masivo, etc. 1. Al compartir recursos, satisfacen las
necesidades de muchos usuarios a la vez. Ejemplo: Sistemas de reservas de aerolíneas.
 Se logra una mejor comunicación entre las personas. Ejemplo: el correo electrónico.
 Tienen mayor flexibilidad, la carga de trabajo se puede distribuir entre diferentes ordenadores.

Desventajas

 Una de las ventajas de los sistemas distribuidos es la economía, pues es mucho más barato, añadir
servidores y clientes cuando se requiere aumentar la potencia de procesamiento.
 El trabajo en conjunto. Por ejemplo: en una fábrica de ensamblado, los robots tienen sus CPUs
diferentes y realizan acciones en conjunto, dirigidos por un sistema distribuido.
 Tienen una mayor confiabilidad. Al estar distribuida la carga de trabajo en muchas máquinas la falla
de una de ellas no afecta a las demás, el sistema sobrevive como un todo.
 Capacidad de crecimiento incremental. Se puede añadir procesadores al sistema incrementando su
potencia en forma gradual según sus necesidades. Con respecto a PCs Independientes:
 Se pueden compartir recursos, como programas y periféricos, muy costosos. Ejemplo: Impresora
Láser, dispositivos de almacenamiento masivo, etc. 1. Al compartir recursos, satisfacen las
necesidades de muchos usuarios a la vez. Ejemplo: Sistemas de reservas de aerolíneas.
 Se logra una mejor comunicación entre las personas. Ejemplo: el correo electrónico.
 Tienen mayor flexibilidad, la carga de trabajo se puede distribuir entre diferentes ordenadores.
Sistema operativo de multiprocesamiento
El multiprocesamiento no es algo nuevo. Hace muchos años,
los PC asignaban tareas específicas a procesadores concretos
(como las unidades de procesamiento gráfico, o GPU). En los
sistemas embebidos, también era habitual contar con más
de un procesador (por lo general diferentes) y que cada uno
se encargase de la función para la que estaba mejor
adaptado.

En la imagen que encontramos más abajo, podemos ver un


sistema multiprocesador heterogéneo embebido de finales
de los 90 con un MPC68360 y un Z80180 compartiendo
memoria en la misma placa.

¿Qué componentes forman un sistema operativo multiprocesamiento

El Sistema Multiprocesador estaría compuesto básicamente por los siguientes elementos:

 Procesador 0
 Procesador 1
 Memoria de datos
 Unidad de Multiprocesamiento (UMP)

Estos elementos estarían conectados por una serie de buses y las respectivas puertas lógicas, multiplexores,
etc. que permitan el correcto funcionamiento.

Un esquema básico del sistema sería el siguiente:

De esta forma, se explica la forma en la que los


elementos del sistema están conectados. Como
podemos comprobar, existe información que fluye
entre los procesadores y la memoria de datos, a la
vez que existe una información entre la Unidad de
Multiprocesamiento y la Memoria de datos. Esta información será la encargada de indicar que procesador
debe ser el que trabaje en un determinado instante con la Memoria de datos, es decir, el procesador que
"hace suya" esta memoria.

MP de nada compartido: Los procesadores no comparten nada (cada uno tiene su propia memoria,
memorias caché y discos), pero están interconectados. Este tipo de proceso muliprocessing también se
denomina clúster puro.

MP de discos compartidos: Las ventajas de los discos compartidos son que se conserva parte de un modelo
de programación familiar (los datos de disco son direccionables y coherentes, la memoria no) y la alta
disponibilidad es mucho más fácil que con los sistemas de memoria compartida. Las desventajas son una
escalabilidad limitada debido a cuellos de botella en el acceso físico y lógico a los datos compartidos.

Clúster de memoria compartida: Todos los procesadores de un clúster de memoria compartida tienen sus
propios recursos (memoria principal, discos, E/S) y cada procesador ejecuta una copia del sistema
operativo.

MP de memoria compartida: Todos los procesadores están estrechamente acoplados dentro de la misma
caja con un bus de alta velocidad o un conmutador. Los procesadores comparten la misma memoria global,
discos y dispositivos de E/S. Solo una copia del sistema operativo se ejecuta en todos los procesadores, y el
sistema operativo debe estar diseñado para explotar esta arquitectura (sistema operativo multihebra).

Características de los Sistemas Operativos de multiprocesamiento

Permite trabajar con máquinas que poseen más de un microprocesador. En un multiprocesador se


denomina multiprocesador a un ordenador que cuenta con dos o más microprocesadores (CPUs).

Gracias a esto, el multiprocesador puede ejecutar simultáneamente varios hilos pertenecientes a un mismo
proceso o bien a procesos diferentes.
Los ordenadores multiprocesadores presentan problemas de diseño que no se encuentran en ordenadores
monoprocesador. Estos problemas derivan del hecho de que dos programas pueden ejecutarse
simultáneamente y, potencialmente, pueden interferirse entre sí. Concretamente, en lo que se refiere a las
lecturas y escrituras en memoria. Existen dos arquitecturas que resuelven estos problemas:

La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria.
La arquitectura SMP, donde todos los procesadores comparten toda la memoria. Esta última debe lidiar con
el problema de la coherencia de caché. Cada microprocesador cuenta con su propia memoria cache local.
De manera que cuando un microprocesador escribe en una dirección de memoria, lo hace únicamente
sobre su copia local en caché. Si otro microprocesador tiene almacenada la misma dirección de memoria en
su caché, resultará que trabaja con una copia obsoleta del dato almacenado.

Para que un multiprocesador opere correctamente necesita un sistema operativo especialmente diseñado
para ello. La mayoría de los sistemas operativos actuales poseen esta capacidad.

Ventajas

 Este Tipo de sistemas Tienden a ser más eficientes porque las tareas tanto del sistema operativo
como de los usuarios pueden ser distribuidas en forma balanceada a todos los procesadores.

 El tiempo de inactividad de un procesador mientras otro está sobre trabajando es mínimo.


 Si un procesador falla, es posible que sus tareas sean repartidas entre los demás y no es necesario
que todo el sistema sea parado o que falle el sistema.
 La portabilidad del sistema es mayor debido a que no sigue la arquitectura demastrer/slave.
 Los sistemas SMP permiten que cualquier procesador trabaje en cualquier tarea sin importar su
localización en memoria.
 La memoria globalmente compartida también vuelve fácil la sincronización de los datos.
 Muchos procesos pueden ejecutarse simultáneamente (N procesos si hay N CPU) sin que haya
deterioro del desempeño.
 Permite compartir dinámicamente trabajos y recursos entre los distintos procesadores, y puede
reducir la varianza entre los sistemas.
Desventajas

 Conforme se añaden procesadores, el tráfico en el bus de memoria se satura.


 Al manejarse ocho o más procesadores, el cuello de botella se vuelve crítico, inclusive para los
mejores diseños, por lo que SMP es considerada una tecnología poco escalable.
 Los sistemas operativos que soportan este tipo de multiprocesamiento son más difíciles de diseñar.
 Dado que las CPU son independientes, una podría estar ociosa mientras otra está sobrecargada, con
la consiguiente ineficiencia.

Aspectos del diseño de sistemas distribuidos

Transparencia

Es una característica de los sistemas distribuidos para ocultar al usuario la manera en que el sistema
funciona o está construido, de tal forma que el usuario tenga la sensación de que todo el sistema
está trabajando en una sola máquina local.

 Un aspecto muy importante es la forma de lograr la imagen de un único sistema.


 Los usuarios deben percibir que la colección de máquinas conectadas son un sistema de
tiempo compartido de un solo procesador:
- Un sistema que logre este objetivo se dice que es transparente.
- Desde el punto de vista de los usuarios, la transparencia se logra cuando:
- Sus pedidos se satisfacen con ejecuciones en paralelo en distintas máquinas.
- Se utilizan una variedad de servidores de archivos.
- El usuario no necesita saberlo ni notarlo.

La transparencia desde el punto de vista de los programas significa diseñar la interfaz de llamadas al
sistema de modo que no sea visible la existencia de varios procesadores.

No es transparente un sistema donde el acceso a los archivos remotos se realice mediante:

 El establecimiento explícito de una conexión en la red con un servidor remoto.


 El envío posterior de mensajes, donde el acceso a los servicios remotos será distinto al acceso
a los servicios locales.

Existen distintos tipos de transparencia en un sistema distribuido:

 De localización: los usuarios no pueden indicar la localización de los


recursos.
 De migración: los recursos se pueden mover a voluntad sin
cambiar sus nombres.
 De réplica: los usuarios no pueden indicar el número de
copias existentes.
 De concurrencia: varios usuarios pueden compartir recursos
de manera automática.
 De paralelismo: las actividades pueden ocurrir en paralelo sin el
conocimiento de los usuarios.

Flexibilidad

La flexibilidad es un aspecto crítico en el diseño de sistemas distribuidos, ya que estos sistemas deben ser
capaces de adaptarse a cambios en los requisitos, la carga de trabajo y las condiciones de operación. Aquí
hay varios aspectos del diseño de sistemas distribuidos relacionados con la flexibilidad:

 Tolerancia a fallos: La flexibilidad en la tolerancia a fallos es esencial. Los sistemas distribuidos deben
ser capaces de detectar y recuperarse de fallos de manera transparente, ya sea en hardware o
software, para mantener la disponibilidad y la integridad de los datos.
 Interoperabilidad: La flexibilidad en la interoperabilidad es esencial para que los sistemas distribuidos
puedan funcionar en entornos heterogéneos con diferentes tecnologías y plataformas. Deben
poder comunicarse con otros sistemas y servicios utilizando estándares y protocolos abiertos.
 Modularidad: Diseñar sistemas distribuidos en módulos o componentes independientes facilita la
flexibilidad en la actualización o sustitución de componentes específicos sin afectar al sistema en su
conjunto. El modularidad también facilita la adaptación a nuevas funcionalidades o requisitos.

Políticas de configuración: La flexibilidad en las políticas de configuración permite ajustar parámetros y


reglas de funcionamiento del sistema en tiempo de ejecución. Esto es útil para adaptarse a diferentes
condiciones operativas, como cambios en la carga de trabajo o la disponibilidad de recursos.

Implementación dinámica: La capacidad de implementar nuevos componentes o servicios en tiempo de


ejecución sin detener el sistema existente es un aspecto clave de la flexibilidad. Esto se logra mediante la
virtualización, la orquestación y la gestión dinámica de recursos.
la flexibilidad en el diseño de sistemas distribuidos implica la capacidad de adaptarse a cambios en los
requisitos, la carga de trabajo y las condiciones de operación sin interrupciones significativas en el servicio.
Esto se logra a través de la escalabilidad, la tolerancia a fallos, la abstracción de recursos, la
interoperabilidad, el modularidad, las políticas de configuración, la implementación dinámica, la
actualización sin interrupciones y una sólida administración y monitorización.

Confiabilidad

Un importante objetivo de los sistemas distribuidos es que, si una máquina falla, alguna otra debe
encargarse del trabajo.

La confiabilidad global teórica del sistema podría ser el “or” booleano de la confiabilidad de los
componentes; ejemplo:

 Se dispone de 5 servidores de archivos, cada uno con una probabilidad de 0,95 de funcionar en un
instante dado.
- La probabilidad de falla simultánea de los 5 es (0,05)5 = 0,000006.
- La probabilidad de que al menos uno esté disponible es 0,999994.

La confiabilidad práctica se ve disminuida ya que muchas veces se requiere que ciertos servidores estén en
servicio simultáneamente para que el todo funcione, debido a ello algunos sistemas tienen una
disponibilidad más relacionada con el “and” booleano de las componentes que con el “or” booleano.

Un aspecto de la confiabilidad es la disponibilidad, que se refiere a la fracción de tiempo en que se puede


utilizar el sistema.

La disponibilidad se mejora mediante:

 Un diseño que no exija el funcionamiento simultáneo de un número sustancial de componentes


críticos.
 La redundancia, es decir la duplicidad de componentes clave del hardware y del software.
 Los datos no deben perderse o mezclarse y si los archivos se almacenan de manera redundante en
varios servidores, todas las copias deben ser consistentes.

Otro aspecto de la confiabilidad general es la seguridad, lo que significa que los archivos y otros recursos
deben ser protegidos contra el uso no autorizado.

Un aspecto también relacionado con la confiabilidad es la tolerancia a fallas, según la cual las fallas se
deben ocultar brindando una recuperación transparente para el usuario, aunque haya cierta degradación
de la performance.

Desempeño

Cuando se ejecuta una aplicación en un sistema distribuido no debe parecer peor que su ejecución en un
único procesador, pero esto es difícil de lograr.

Algunas métricas del desempeño son:

 Tiempo de respuesta.
 Rendimiento (número de trabajos por hora).
 Uso del sistema y cantidad consumida de la capacidad de la red.
 El problema se complica por el hecho de que la comunicación entre equipos es lenta comparada con:
 La velocidad de proceso.
 La velocidad de la comunicación dentro de un mismo procesador.

Se requiere el uso de protocolos de comunicaciones en los extremos (procesadores) que intervienen en la


comunicación, con lo que se incrementa el consumo de ciclos de procesador.

Para optimizar el desempeño frecuentemente hay que:

 Minimizar el número de mensajes:


- La dificultad es que la mejor forma de mejorar el desempeño es tener muchas actividades en
ejecución paralela en distintos procesadores, pero esto requiere el envío de muchos
mensajes.
 Centralizar el trabajo en una sola máquina:
- Resulta poco apropiado para un sistema distribuido.
 También se debe prestar atención al tamaño de grano de todos los cálculos:
- Paralelismo de grano fino. Corresponde a trabajos con un gran número de pequeños cálculos
y mucha interacción con otros trabajos, debido a ello requieren mucha comunicación que
puede afectar el desempeño.
 Paralelismo de grano grueso:
- Corresponde a trabajos con grandes cálculos, poca interacción y pocos datos, por lo tanto,
requieren poca comunicación y no afectan la performance.

Escalabilidad

La tendencia indica que el tamaño de los sistemas distribuidos es hacia cientos de miles y aun decenas de
millones de usuarios conectados.

Existen cuellos de botella potenciales que se debe intentar evitar en los sistemas distribuidos de gran
escala:

 Componentes centralizados:
- Ej.: un solo servidor de correo para todos los usuarios.
 Tablas centralizadas:
- Ej.: un único directorio telefónico en línea.
 Algoritmos centralizados:
- Ej.: realización de un ruteo con base en la información completa.
 Se deben utilizar algoritmos descentralizados con las siguientes características:
- Ninguna máquina tiene la información completa acerca del estado del sistema.
- Las máquinas toman decisiones solo en base a la información disponible de manera local.
- El fallo de una máquina no arruina el algoritmo.
- No existe una hipótesis implícita de la existencia de un reloj global.
Repartición de la carga

Se debe analizar con qué equipos cuenta el sistema y los diferentes recursos de cómputo en cada uno de
ellos, como capacidad de disco, velocidad de la red, etc. Los tipos de arquitectura a usar pueden ser:

• Servidores-estación de trabajo.
• Pila de procesadores.
• Multiprocesadores con memoria compartida.
• Multiprocesadores con memoria distribuida.

Mantenimiento de consistencia

Verificar que todos los conceptos involucrados con el sistema operativo, al operar en un esquema
distribuido, sigan realizándose de manera correcta.

Entre los puntos a observar están los siguientes:

• Modificación.
• Caché.
• Falla.
• Replicación.
• Interfaz de usuario.
• Reloj.

Consistencia de cache:

 cache = conservación de datos en el cliente


- Muy dependiente de la localidad de referencia.
- No afecta al diseño de los servidores
 Gran ahorro de comunicaciones en la red
- Además, datos utilizables por todos los procesos clientes de una misma máquina
 Sí mismos datos retenidos en diferentes clientes:
- Una actualización en uno no se “ve” en los demás
- Problema de los datos “rancios” (stale)
- Es un caso especial de la consistencia de replicación

Consistencia de fallo:

 Sistema centralizado: Modo de fallo simple


 SD: modos de fallo múltiples
- si un componente falla, los otros pueden seguir
- pero si estaban cooperando: resultado impredecible

Consistencia de reloj:

 En SD: uso intensivo de sellos temporales


- Necesidad de sincronización: mediante mensajes
- Problema: el tiempo de un envío no es predecible
- Pero nos basta con ordenar eventos: relojes lógicos
 Consistencia de interfaz de usuario:
- enmascaramiento de las operaciones remotas en aplicaciones interactivas

Funcionalidad

Implica que el sistema distribuido a implementar funcione de acuerdo con las metas trazadas y que
permita hacer más eficiente el trabajo que antes se hacía usando un sistema centralizado.

Dicho esto, el sistema operativo actúa como intermediario entre el hardware, las funciones de
entrada, salida y la asignación de memoria en cada caso de uso. Como consecuencia, el sistema
operativo administra los siguientes dispositivos: Entrada: estos incluyen el teclado, el mouse y la
cámara.
Seguridad

Es importante considerar todos los factores de riesgo a que se expone la información en un ambiente
distribuido, por ello se deben de implementar los mecanismos de seguridad que permitan proteger
esta información.

 Es el elemento más importante y más complejo principalmente debido a la existencia de


conexiones y equipos esencialmente distribuidos. Las técnicas de encriptación pueden ser
utilizadas para proporcionar la protección adecuada a los recursos compartidos cuando se
transmiten mediante la red. Los ataques DOS siguen siendo un problema de seguridad.
 Los sistemas distribuidos conectan muchos nodos a través de la red y son muchos los
usuarios que acceden a la misma, lo que lleva aparejado un aumento del riesgo en la
integridad y privacidad de los datos y las comunicaciones.
 Precisamente por este motivo es necesario adoptar medidas de seguridad adicionales para
este tipo de arquitectura, de modo que se pueda compensar el riesgo de potenciales
ataques, o en caso de producirse, mitigar sus efectos.

Taxonomía de los sistemas distribuidos


La taxonomía de los sistemas distribuidos se refiere a la clasificación y categorización de los sistemas
distribuidos en función de diversas características y
propiedades. A continuación, te proporciono una taxonomía
básica de los sistemas distribuidos, que puede variar
dependiendo de la perspectiva y el contexto:

 Arquitectura:

Cliente-Servidor: Los sistemas distribuidos se dividen en dos componentes principales: clientes que
solicitan servicios y servidores que proporcionan esos servicios.

Peer-to-Peer (P2P): Los nodos en la red tienen roles equivalentes y pueden actuar como clientes y
servidores al mismo tiempo. No hay una distinción clara entre clientes y servidores.

 Comunicación:
Comunicación Síncrona: Las comunicaciones entre los nodos ocurren en tiempo real y esperan una
respuesta inmediata.

Comunicación Asíncrona: Las comunicaciones no requieren una respuesta inmediata y pueden


continuar con otras tareas mientras se espera una respuesta.

 Control de Coherencia y Consistencia:

Sistemas Centralizados: Un único punto de control gestiona la coherencia de los datos.

Sistemas Descentralizados: Varios nodos pueden gestionar la coherencia de los datos en diferentes
partes del sistema.

Sistemas Distribuidos Coherentes: Se utilizan algoritmos y protocolos para garantizar la coherencia


de los datos en todo el sistema.

 Escalabilidad:

Escalabilidad Vertical: Se añaden recursos (como CPU o RAM) a un solo nodo para mejorar el
rendimiento.

Escalabilidad Horizontal: Se añaden nodos adicionales al sistema para distribuir la carga y mejorar el
rendimiento.

 Tolerancia a Fallos:

Sistemas Tolera Fallos: Los sistemas están diseñados para resistir fallos individuales sin interrupción
del servicio.

Sistemas No Tolerantes a Fallos: Los fallos individuales pueden causar la interrupción del servicio.

 Seguridad:

Seguridad Distribuida: Se implementan medidas de seguridad en todo el sistema distribuido para


proteger los datos y las comunicaciones.

Seguridad Centralizada: La seguridad se controla desde un punto central.

 Modelo de Programación:

Modelo de Programación Paralela: Los desarrolladores escriben código para ejecutarse en paralelo
en múltiples nodos.

Modelo de Programación Concurrente: Los desarrolladores escriben código que se ejecuta de


manera concurrente en múltiples nodos.
Los sistemas distribuidos pueden clasificarse de la siguiente manera:

1.- Sistemas con software débilmente acoplado en hardware débilmente acoplado. Ejemplo: Sistema
operativo de red, como es el caso de NFS (Network File System - Sistema de archivo de red).

2.- Sistemas con software fuertemente acoplado en hardware fuertemente acoplado. Ejemplo: Sistemas
operativos de multiprocesador (sistemas paralelos).

3.-Sistemas con software fuertemente acoplado en hardware débilmente acoplado. Ejemplo: Sistemas
realmente distribuidos (imagen de sistema único).

20 Sistemas distribuidos Un caso de los sistemas distribuidos con software y hardware débilmente
acoplado son los sistemas operativos de red. Algunas prestaciones de estos sistemas son:

• Conexión remota con otras computadoras.

• Copia remota de archivos de una máquina a otra.

• Sistema de archivos global compartidos.

BIBLIGRAFIA:

http://dccd.cua.uam.mx/libros/archivos/03IXStream_sistemas_distribuidos.pdf

https://es.slideshare.net/ItatyVivar1/unidad-1-tema-1-pptx

https://www.studocu.com/en-gb/document/university-of-nottingham/gem-alimentary-system/
03ixstream-sistemas-distribuidos/14198571

https://es.scribd.com/document/423668487/Introduccion-a-Los-Sistemas-Distribuidos

https://www.atlassian.com/es/microservices/microservices-architecture/distributed-architecture

https://www.ilimit.com/blog/importancia-arquitectura-distribuida/

https://www.geocities.ws/nancy_aguas/ad.html

También podría gustarte