Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Sistemas Distribuidos

4,736 views

Published on

Esta es una presentación de sistemas operativos

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

Sistemas Distribuidos

  1. 1. CAPÍTULO 6: SISTEMAS DISTRIBUIDOS Abril-Agosto 2009
  2. 2. OBJETIVO : <ul><li>Proporcionar una panoráma de alto nivel de los sistemas distribuidos y de las redes que los interconectan. </li></ul><ul><li>Analizar la estructura de los sistemas operativos distribuidos. </li></ul>
  3. 3. Contenido <ul><li>Motivación. </li></ul><ul><li>Tipos de sistemas operativos distribuidos. </li></ul><ul><li>Estructura de una red </li></ul><ul><li>Topoligía de red </li></ul><ul><li>Estructura de comunicación </li></ul><ul><li>Protocolo de comunicación </li></ul><ul><li>Robustez </li></ul>
  4. 4. MOTIVACIÓN <ul><li>Un sistemas distribuido es una colección de procesadores débilmente acoplados interconectados a través de una red de comunicación. </li></ul><ul><li>Estos procesadores se denominan: sitios, nodos, máquinas, computadores, host. </li></ul>
  5. 5. MOTIVACIÓN <ul><li>Hay cuatro razones para construir un sistema distribuido: </li></ul><ul><ul><li>Compartición de recursos: Si hay varios nodos conectados entre sí, un usuario en uno de los nodos puede utilizr los recursos disponibles en otro. </li></ul></ul><ul><ul><li>Aceleracenión de cálculos: Si un deterimnado cálculo puede dividirse en una serie de calculos menor envergadura que pueden ejecutarse de forma concurrente, un sistema distribuido permitira distribuir esos subcálculos entre los diversos nodo. </li></ul></ul><ul><ul><li>Fiabilidad: Si falla uno de los nodos, nodos restantes pueden continuar operando. </li></ul></ul><ul><ul><li>Comunicación: Cuando hay varios sitios conectados entre sí mediante una red de comunicación, los usuarios de los diferentes nodos tienen la oportunidad de intercambiar información. </li></ul></ul>
  6. 6. TIPOS DE SO DISTRIBUIDOS <ul><li>Sistemas Operativos en red. </li></ul><ul><li>Sistemas Operativos distribuidos. </li></ul>
  7. 7. Sistemas Operativos en Red <ul><li>Proporciona un entorno en la que los usuarios pueden acceder a recuros remotos iniciando una sesión en una máquina remota. </li></ul><ul><li>Inicio de Sesión: </li></ul><ul><ul><li>Una función importante que permitir a los usuarios iniciar una sesión remota. Internet proporciona el protocolo telnet para este proposito. </li></ul></ul><ul><ul><li>telnet cs.yale.edu </li></ul></ul><ul><ul><li>Este comando permiti iniciar una sesión remota. </li></ul></ul><ul><ul><li>El proceso en la maquina remota solicitara un usuario y clave. </li></ul></ul><ul><ul><li>Una vez recibidad la información correcta el procesos actuara como proxy para el usuario, que podrá realizar sus cálculos en la máquina remota exactamente igual que cualquier usuario local. </li></ul></ul>
  8. 8. Sistemas Operativos en Red <ul><li>Transferencia rempota de archivos: </li></ul><ul><ul><li>El protocolo ftp permite acceder a un sistema de archivos remotos </li></ul></ul><ul><ul><li>ftp cs.yale.edu </li></ul></ul><ul><ul><li>El programa pedira una usuario y clave para iniciar sesión </li></ul></ul><ul><ul><li>Tambien se puede especificar un usuario anónimo (usuario anonymous y clave arbitrarea)‏ </li></ul></ul><ul><ul><li>Comandos de ftp: </li></ul></ul><ul><ul><ul><li>put: transfiere una archivos desde la máquina local a la máquina remota. </li></ul></ul></ul><ul><ul><ul><li>get: transfiere un archivo desde la máquina remota a la máquina local </li></ul></ul></ul><ul><ul><ul><li>ls / dir: enumerar los archivos situados en el directorio actual </li></ul></ul></ul><ul><ul><ul><li>cd: cambiar de directorio </li></ul></ul></ul>
  9. 9. Sistemas Operativos Distribuidos <ul><li>Los usuarios acceden a recuros remotos de la misma forma que si lo hicieran localmente. </li></ul><ul><li>Migración de datos </li></ul><ul><li>Una técnica de migración es transferir todos los datos remotos al equipo local, una vez que ya no se necesiten, se devuelve una copia del archivo al sistio remoto, aún si se ha hecho un pequeño cambio. </li></ul><ul><li>Otra técnica consiste en transferir la porsión de datos que son necesarios en ese momento y posteriormente se devolvera una copia de esa porsión. </li></ul>
  10. 10. Sistemas Operativos Distribuidos <ul><li>Migración de Cálculos. </li></ul><ul><ul><li>Supongamos que el proceso P quiere acceder a una archivo situado en el nodo A y sacar un resumen de ese archivo. </li></ul></ul><ul><ul><li>Una técnica para ello es por medio de RPC, El proceso P invoca a un procedimiento predefinido en el sitio A, ese procedimiento se ejecutara de manera apropiada y luego devolvera el resultado a P. </li></ul></ul><ul><ul><li>Otra técnica es el envio de mensajes al sitio remoto. El proceso P envía un mensaje al sitio A. El SO en el sitio A crea entonces un proceso Q cuya función consiste en llevar a caba la tarea asignada. Cuando el proceso Q termina su ejecución, devuelve el resultado a P a través del sistema de mensajes. </li></ul></ul>
  11. 11. Sistemas Operativos Distribuidos <ul><li>Migración de Procesos. </li></ul><ul><ul><li>Es una extensión lógica de la migarción de cálculos. </li></ul></ul><ul><ul><li>Cuando se inicia un proceso no siempre se ejecuta localmente, el proceso completo o partes del mismo, pueden ejecutarce en diferentes sitios. </li></ul></ul><ul><ul><li>Este sistema se puede emplear por diferentes razones: </li></ul></ul><ul><ul><ul><li>Equilibrio de carga </li></ul></ul></ul><ul><ul><ul><li>Aceleración de cálculos </li></ul></ul></ul><ul><ul><ul><li>Preferencias de hardware </li></ul></ul></ul><ul><ul><ul><li>Preferencias de software </li></ul></ul></ul><ul><ul><ul><li>Acceso a datos </li></ul></ul></ul>
  12. 12. ESTRUCTURA DE UNA RED <ul><li>Redes de área local Redes de área extensa </li></ul>c
  13. 13. TOPOLIGÍA DE LA RED <ul><li>Se puede compara las distintas configuraciones son los siguientes criterio. </li></ul><ul><ul><li>Coste de instalación:  Coste de enlazar fisicamente los nodos del sistema </li></ul></ul><ul><ul><li>Coste de comunicación: Coste de tiempo y en dinero para enviar un mensaje. </li></ul></ul><ul><ul><li>Disponibiliad: El gardo hasta ek que puede accederse a los datos a pesar del fallo de algún enlace o nodo. </li></ul></ul>
  14. 14. TOPOLIGÍA DE LA RED
  15. 15. ESTRUCTURA DE COMUNICACIÓN <ul><li>Los diseñadores de redes deben contemplan cinco cuestiones básicas: </li></ul><ul><li>Nombrado y resolución de IP: </li></ul><ul><ul><li>Si dos nodos A y B desean intercambiar información entre ellos, deben se capacez de nombrarse. </li></ul></ul><ul><ul><li>Para resolver este problema, los procesos de lso sistemas remotos se identifican generalmente mediante la pareja < nombre de host, identificador > </li></ul></ul><ul><ul><li>Es más facil recordar un nombre que un número, por esta razón debe exitir un mecanismo de resolver el nombre de host en un identificador de host. </li></ul></ul><ul><ul><li>Un mecanismo para la resolución es que cada equipo tenga un archivo de datos con la resolución local. </li></ul></ul><ul><ul><li>Otro mecanismo es mediante un sistema de nombramiento de dominio (DNS)‏ </li></ul></ul>
  16. 16. ESTRUCTURA DE COMUNICACIÓN <ul><li>Estrategias de encaminamiento: </li></ul><ul><ul><li>Encaminamiento fijo: Se especifica de antemano una ruta desde A a B </li></ul></ul><ul><ul><li>Encaminamiento virutal: Se fija una ruta desde A hata B mientras dura una sesión </li></ul></ul><ul><ul><li>Encaminamiento dinámico: La ruta utilizada para enviar un mensaje desde el sitio A a B se selecciona en el momento de seleccionar el mensaje. </li></ul></ul><ul><li>Estrategias de paquetes: </li></ul><ul><ul><li>Generalmente los mensajes son de longitud variables. Para simplificar el diseño se implementa las comunicicaciones mediante mensajes de longiud fija denominados paquetes, tramas o datagramas. Todo mensaje implementado en un único paquete puede enviarse a su destino como un mensaje sin conexión. </li></ul></ul>
  17. 17. ESTRUCTURA DE COMUNICACIÓN <ul><li>Estrategias de conexión </li></ul><ul><ul><li>Una vez que los mensajes son capaces de alcanzar su destino, los procesos pueden establecer sesiones de comunicación para intercambiar información. </li></ul></ul><ul><ul><li>Comunicación de circuitos: Si dos procesos quieren comunicarce establecen dos enlaces físicos permanentes. </li></ul></ul><ul><ul><li>Comunicación de mensajes: Si dos procesos quieren comunicarse establecen un enlace temporal mientras dure la transferencia. </li></ul></ul><ul><ul><li>Comunicación de palquetes: Cada mensaje lógico puede dividirse en una serie de paquetes. Cada paquete puede ser enviado a su destino por separado y debe por tanto incluir una dirección origen y destino a través de la red. </li></ul></ul>
  18. 18. ESTRUCTURA DE COMUNICACIÓN <ul><li>Contienda </li></ul><ul><ul><li>Esposible que varios sitios quieran transmitir información simultameamente a través de un mismo enlace. Esta situación se produce principalmente en redes anillo y de bus multiacceso. Por lo que hay que establecer técnicas para evitar las colisiones repentinas. </li></ul></ul><ul><ul><li>CSMA/CD: Antes de transmitir un mensaje por el enlace el nodo debe ponerse a la escucha para determinara si se esta transmitiendo otro mensaje, estas técnica se denomina detección de portadora con acceso múltiple. Si el enlace esta libre puede transmitir caso contrario debe esperar hasta que este libre. </li></ul></ul><ul><ul><li>Paso de testigo: Un testigo circula por el sistema. El sistio que necesite transmitir información deberá esperar hasta que le llege el testigo. Entonces, el nodo elimina el testigo y empieza a transmitir sus mensajes. </li></ul></ul>
  19. 19. ROBUSTEZ <ul><li>En un sistema distribuido puede haber fallas en un enlace, en un sitio y la perdida de mensajes. Para garantizar la robustez del sistema, podemos detectar todos esos fallos, reconfigurando el sisetma de forma que el procesamiento pueda continuar y efectuar la correspondiente recuperación conado se repare un sitio o enlace. </li></ul><ul><li>Detección de fallos </li></ul><ul><ul><li>En un entorno sin memoria compartida no podemos diferenciar entre fallos de enlace, de sitio o permidida de mensajes. Usualmente lo único que se puede detectar es que se ha producido un fallo. </li></ul></ul><ul><ul><li>Para detectar que se ha producido un fallo de enlace y de sitio podemos utilizar un procedimiento de contacto. </li></ul></ul>
  20. 20. ROBUSTEZ <ul><li>Detección de fallos </li></ul><ul><ul><li>Supongamos que el sitio A y B tiene un enlace físico directo entre ellos, Ambos envia un mensaje Estoy Funcionando. Si el sitio A no recibe ese mensaje dentro de un periodo de tiempo predeterminado, se puede sumir que el sitio B ha fallado, que el enlace entre A y B ha fallado o que el mensaje se ha perdido. </li></ul></ul><ul><ul><li>Para diferenciar entre un fallo del enlace y el de sitio. Se puede enviar otro mensaje ¿Estas funcionando? A través de otra ruta. Cuando B reciba el mensaje respondera inmediatamente. Esta respuesta le dice a A que el enlace directo entre A y B esta fallando. Caso contrario puede darse la siguintes situaciones: </li></ul></ul><ul><ul><ul><li>El sitio a fallado. </li></ul></ul></ul><ul><ul><ul><li>El enlace directo entre A y B a fallado. </li></ul></ul></ul><ul><ul><ul><li>La ruta alternativa a fallado. </li></ul></ul></ul><ul><ul><ul><li>El mensaje se ha perdido. </li></ul></ul></ul>
  21. 21. ROBUSTEZ <ul><li>Reconfiguración </li></ul><ul><ul><li>En caso que se haya deteminado que se ha producido un fallo, deberá iniciar un procedimiento que permita al sistema reconfigurarse y continuar con su modo normal de operación. </li></ul></ul><ul><ul><li>Si ha fallado un enlace entre A y B, debe difindirse a todos los sitios del sistema, para poder actualizar correspondientemente las diversas tablas de encaminamiento. </li></ul></ul><ul><ul><li>Si el sistema cree que el sitio a fallado debe notofocar a todos los sistemas, para que no intenten utilizar los servicios del sitio que ha fallado. </li></ul></ul><ul><li>Recuperación de fallos </li></ul><ul><ul><li>Supongamis que el enlace ha fallado. Cuando se repare el enlace entre A y B debe notificarse tanto a A como a B. </li></ul></ul><ul><ul><li>Supongamso que el sitio B ha fallado. Cuando se recupere deberá notificarse a todos los sitios que ya está en funcionamiento de nuevo. </li></ul></ul>

×