COMUNICACIÓN EN LOS SISTEMAS OPERATIVOS DISTRIBUIDOS
ewingResumen29 de Marzo de 2019
4.654 Palabras (19 Páginas)150 Visitas
CAPITULO II.
COMUNICACIÓN EN LOS SISTEMAS OPERATIVOS DISTRIBUIDOS.
¿QUÉ ES UN SISTEMA DISTRIBUIDO?
Un sistema distribuido no es más que una colección de computadoras independientes que ante al usuario crean la ilusión de ser único sistema en la máquina(es decir, los usuarios piensan que el sistema es como una única computadora).
2.1 Comunicación.
La comunicación en los sistemas distribuidos se lleva acabo base la transferencia de mensajes. Por ejemplo cuando el proceso A quiere comunicarse con el proceso B Construye primero un mensaje en su propio espacio de direcciones. Entonces para que se pueda enviar el mensaje a través de la red B, se ejecuta la llamada al sistema operativo para que este lo busque y pueda enviarlo, pero para que pueda suceder esto tiene que coincidir los bits que se envíen, si no será todo un caos.
En la comunicación se necesitan muchos puntos a detalles, desde en el bajo nivel y hasta el alto nivel de transferencias de información en bits, por lo tanto para facilitar el trabajo la Organización Internacional de Estándares desarrolló un modelo que identifica los distintos niveles, que se llama el modelo de referencia para interconexión de sistemas abiertos (ISO o OSI). El modelo OSI está diseñado para permitir la comunicación de sistemas abiertos.
Un sistema abierto: es aquel preparado para comunicarse con cualquier otro sistema abierto mediante normas que gobiernan el contenido y significado de los mensajes enviados y recibidos. Se lleva a cabo mediante reglas de protocolos.
En el sistema OSI se distingue entre dos tipos generales de protocolos:
Protocolos orientados hacia las conexiones: es aquella en donde antes de intercambiar los datos, el emisor y el receptor establecen primero de forma clara una conexión y es probable que negocien el protocolo por utilizar. se debe terminar la conexión.
Protocolo sin conexión: es aquella que no es necesariamente una configuración previa ya que simplemente el emisor trasmite el primer mensaje una vez que está listo.
El sistema OSI se divide en siete niveles o capas que son:
- La capa física: trasmite los ceros y uno. Los números de voltios a utilizar para 0 y 1, el número de bits que se pueden enviar por segundo, la trasmisión se lleva a cabo por ambas direcciones en forma simultánea.
- La capa de enlace de datos: es la encargada de agrupar los bits en unidades, que a veces suelen llamarse marcos, y revisar que cada marco se reciba en forma correcta. (detectar errores y corregirlos)
- La capa de red: es la encargada de elegir una línea para que el mensaje del emisor llegue al receptor, una de las mejores rutas es el ruteo.
- La capa de transporte: es la encargada de poner todo en orden.
- La capa de sesión: proporciona control de dialogo, manteniendo un registro de la parte que está hablando en cierto momento y proporciona facilidades para la sincronización
- La capa de presentación: es la encargada sobre el significado de bits, es decir, como nombres de personas, sus direcciones, cantidades de dinero, etc.
- La capa de aplicación: es en realidad una colección de varios protocolos para actividades comunes, como correo electrónico, la trasferencia de archivos y la conexión de terminales remotas de computadoras en una red.
2.1.1 Comunicación con cliente servidor (sockets).
Las máquinas de los clientes y servidores ejecutan por lo general el mismo micro núcleo y ambos se ejecutan como procesos del usuario. Una maquina puede ejecutar un proceso o varios clientes, varios servidores o combinaciones de ambos.
El modelo cliente-servidor es la arquitectura más citada cuando se discuten los sistemas distribuidos.
Lo usual para que el cliente servidor pueda evitar un gasto excesivo en los protocolos orientados hacia la conexión como OSI o TPC/IP, es que se base en un protocolo solicitud/respuesta sencillo y sin conexión. El cliente envía un mensaje de solicitud al servidor para pedir cierto servicio. El servidor hace trabajo y regresa los datos solicitados o un código error para indicar la razón por la cual un trabajo no se pudo llevar acabo.
Unas de sus principales ventajas es su sencillez; el cliente envía un mensaje y obtiene una respuesta. No se tiene que establecer una conexión si no que hasta que esta se utilice. El mensaje sirve como la respuesta de la solicitud.
Su otra ventajas es la eficiencia .la pila del protocolo es más corta y por lo tanto es más eficiente.
2.1.2 Comunicación con RPC.
Debido a que el modelo cliente servidor se consideraba un error para las personas que laboraban con el sistema distribuido, ya que su objetivo es lograr que el cómputo distribuido se vea como el cómputo centralizado.
Por lo tanto Birrel y Nelson sugirieron permitir a los programas que llamasen a procedimientos localizados a otras máquinas. Cuando un proceso en la maquina A llama a un procedimiento e n la maquina B, el proceso que realiza la llamada a A se suspende y la ejecución del procedimiento se realiza en B. La información se puede transportar de un lado a otro mediante los parámetros y puede regresar en el resultado del procedimiento. El programador no se preocupa de una transferencia de mensajes o de entrada y salida. El método se conoce como llamada a un procedimiento remoto o RPC.
De igual manera existen algunos problemas debido a que realizan la llamada y el que la recibe ejecutan en máquinas diferentes, utilizan espacios de direcciones diferentes lo que provoca alagunas complicaciones. De igual manera se pueden transferir los parámetros y los resultados, lo que se puede complicar en especial si las maquinas no son idénticas, y por ultimo tenemos que se pueden descomponer ambas máquinas y cada una de las posibles fayas pueden ser la causa de diversos problemas.
2.1.3 Comunicación en grupo.
Una característica del RPC es que la comunicación es entre dos partes cliente-servidor por lo tanto existe algunas veces que la comunicación es entre varios procesos y no solo dos.
Es aquí donde entra lo que es la comunicación en grupo la cual se define como una colección de procesos que actúan juntos en cierto sistema o alguna forma determinada por el usuario. Una de las propiedades fundamentales de todos los grupos es que cuando un mensaje se envía al propio grupo, todos los miembros de este lo recibe.es una forma que se conoce como uno-muchos (un emisor, muchos receptores) y contrasta con la comunicación puntual.
Es dinámico ya que se pueden crear nuevos grupos y destruirse grupos anteriores.
La comunicación en grupo puede dividirse en dos categorías, según quien pueda enviar a quien:
Tenemos el grupo cerrado donde los miembros del grupo pueden enviar hacia el grupo. Los extraños no pueden enviar mensajes al grupo como un todo, aunque pueden enviar al grupo a modo individual.
También encontramos los grupos abiertos en donde cualquier proceso del sistema puede enviar a cualquier grupo.
Entre sus ventajas y desventajas encontramos:
El grupo de compañero es simétrico y no tiene un punto de faya; es decir si uno de los procesos falla, el grupo solo se vuelve más pequeño, pero puede continuar.
Entre su desventaja tenemos que la toma de decisiones es más difícil, ya que se tiene que pedir un voto lo que produce cierto retraso y costo.
.2.1.4 Tolerancia a fallos.
Una falla es un desperfecto, causado tal vez por un error de diseño, un error de fabricación, un error de programación, un daño físico, el deterioro en curso de tiempo, condiciones ambientales.
Las fallas se clasifican por lo general:
Fayas de transitorias ocurren una vez y después desaparecen. Si la operación se repite, la falla ya no se presenta.
Falla intermitente esta desaparece, reaparece, etcétera. Un mal contacto de un conector causa con frecuencia una falla intermitente. Las cuales son graves por su difícil diagnóstico.
Falla permanente es aquella que continua existiendo hasta reparar el componente con el desperfecto. Los circuitos quemados, los errores del software y el rompimiento de la cabeza del disco provocan con frecuencia fallas permanentes.
El objetivo del diseño y construcción de sistemas de tolerancia de fallas consiste en garantizar que el sistema continué funcionando de manera correcta como un todo, incluso en la presencia de fallas.
Entre otras de las fallas encontramos las del sistema incluyendo aquí principalmente la falla del procesador o procesos por errores del software.
Entre ellas se puede distinguir dos tipos de fallas del procesador que son:
Fallas silentes: un procesador que falla solo se detiene y no responde a las entradas subsecuentes, ni produce más entradas, excepto que puede enunciar que ya no está funcionando.
...