48
SISTEMAS DISTRIBUIDOS FTHM 2015 - I 1 UNIVERSIDAD PERUANA LOS ANDES FACULTAD DE INGENIERÍA CARRERA PROFESIONAL DE INGENIERIA DE SISTEMAS Y COMPUTACION Mg. Freddy Toribio Huayta Meza INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS

Introducción a Los Sistemas Distribuidos

Embed Size (px)

DESCRIPTION

Introducción a Los Sistemas Distribuidos

Citation preview

  • SISTEMAS DISTRIBUIDOSFTHM 2015 - I*UNIVERSIDAD PERUANA LOS ANDESFACULTAD DE INGENIERACARRERA PROFESIONAL DE INGENIERIA DE SISTEMAS Y COMPUTACIONMg. Freddy Toribio Huayta MezaINTRODUCCIN A LOS SISTEMAS DISTRIBUIDOS

    FTHM 2015 - I

  • AntecedentesDos grandes avances tecnolgicos en los 80sDesarrollo de microprocesadoresDe una mquina de 10 millones de dlares que ejecuta una instruccin por minuto, se pasa a mquinas de 1000 dlares que ejecutan 10 millones de instrucciones por seg.. Invencin de redesPosibilidad de conectar uno o ms computadoras entre s Roll Royce de 100 dlares con un billn de kilmetros por litroTamao manual para abrir puerta: 200 pgs.FTHM 2015 - I*

    FTHM 2015 - I

  • IntroduccinRedes de comunicacin: Permiten conectar decenas, centenas y todas las mquinas que se requieran (Internet).Sistemas Operativos distribuidos que permitan cooperar y multiplicar la potencia del clculo.FTHM 2015 - I*

    FTHM 2015 - I

  • Desarrollos conceptuales1960s 1970s 1980sTiempo CompartidoGrficasRedesComputadoras como herramientaspersonalesEstaciones detrabajoCliente/ServidorRedes LocalesSistemasabiertos,escalables,tolerantes a fallasIdeasclaveInstitucionespilaresXerox AltoLisp machineApple IISmalltalkAloha netMIT CTSSCambridge TSSTenex, UnixSketchpadARPANETXerox DoradoSun 1, Apollo DomainXerox: DFS, GrapevineBerkeley UnixNewcastle ConnectionCambridge DCSEthernet, Cambridge RingSistema V - StanfordSun NFSMIT: X-11, ArgusCMU: Accent, AndrewMachAmoebaChrousFTHM 2015 - I*

    FTHM 2015 - I

  • Sistemas DistribuidosConjunto de computadoras independientes que se presenta a los usuarios como un sistema nico.AspectosEl hardware : mquinas autnomas, es decir, que puedan operar sin la supervisin de ninguna otra.El software : Debe conseguir que los usuarios del sistema lo vean como una mquina central convencional nicaFTHM 2015 - I*

    FTHM 2015 - I

  • Sistemas DistribuidosConjunto de entidades que se comunican entre ellos a travs de mensajes, los cuales son enviados sobre vas de comunicacin.Entidades: Procesos, computadoras, redes computadoras, dispositivos, procesadores etc..FTHM 2015 - I*

    FTHM 2015 - I

  • Elementos de Sistemas DistribuidosFTHM 2015 - I*(1) Procesosreciben, manipulan, transforman y emiten datos

    (2) Vas de comunicacinmedio sobre el cual circulan los datos y que forman una red local dotado de propiedades estructurales y dinmicas.

    FTHM 2015 - I

  • Los procesosFTHM 2015 - I*Trmino introducido por Dijkstra en 1968 para modelar las relaciones entre diferentes unidades de ejecucin independientes que deben compartir recursos comunes, (materiales y lgicos)

    - En sistemas distribuidos,unidad de ejecucin elemental de un algoritmo distribuido o paralelo; diversas de esas unidades pueden ejecutarse simultneamente, y cada una es indivisible.

    FTHM 2015 - I

  • Las Vas de Comunicacin Medio a travs del cual viajan los mensajes Sistema distribuido: vas de comunicacin virtuales Propiedades:1. Propiedades estructurales2. Propiedades comportamentalesFTHM 2015 - I*

    FTHM 2015 - I

  • Propiedades Estructurales Son de naturaleza topolgica Se refiere a las mallas de comunicacin Toda topologa es posible segn el problema tratado y el algoritmo distribuido que lo resuelve. Estructuras ms comunes:1. Anillo2. Estrella3. rbolFTHM 2015 - I*

    FTHM 2015 - I

  • Propiedades ComportamentalesFTHM 2015 - I*Hiptesis sobre comportamiento de las vas de comunicacin.

    1. Transmisin se hace sin duplicacin de mensajes2. Transmisin sin alteracin de mensajes3. Entre dos procesos el orden de recepcin de mensajes es idntico a su orden de emisin: no hay desplazamientos4. Tiempo de espera de un mensaje es finito, (aunque aleatorio), (no hay perdida de mensajes).5. Tiempo atencin limitado => existe una cota superior si no hay perdida de mensaje mensaje fue recibido en caso contrario mensaje recibido o perdido

    FTHM 2015 - I

  • Caractersticas de los sistemas distribuidosUso de un sistema de comunicacin.Ausencia de memoria comn.Sincronizacin del trabajo.Ausencia de un estado global perceptible por un observador.Comunicacin a travs de mensajes.FTHM 2015 - I*

    FTHM 2015 - I

  • Tolerancia a fallasSistema distribuido que puede seguir funcionando, (tal vez con un menor desempeo), a pesar de que uno de sus componentes no este funcionando (sistemas robustos).Redundancia de hardwareRecuperacin de softwareFTHM 2015 - I*

    FTHM 2015 - I

  • ConfiabilidadDatos transmitidos a travs de vas de comunicacin Posibilidad de prdida y modificacin de datos (Capacidades de recuperacin de datos)FTHM 2015 - I*

    FTHM 2015 - I

  • DisponibilidadFalla en una sola computadora multiusuario da como resultado la no disponibilidad del sistema para todos sus usuarios.Cuando uno de los componentes falla en un sistema distribuido solo el trabajo que estaba usando el componente es afectado.Un usuario puede moverse a otra estacin si la que usa falla, o un servidor puede reinicializarse en otra computadora.FTHM 2015 - I*

    FTHM 2015 - I

  • Apertura del sistemaSistemas abiertos distribuidos proporcionan un mecanismo de comunicacin de procesos uniforme y publican interfaces para el acceso a recursos compartidos.Pueden ser construidos a partir de software y hardware heterogeneo.FTHM 2015 - I*

    FTHM 2015 - I

  • ConcurrenciaVarios procesos se encuentran sobre una sola computadora.Ejecucin intercalada en el caso de un solo procesador y simultanea si existen n procesadores.Ejecucin paralela posible debido a:Varios usuarios invocan comandos o interactuan con programas de aplicacin.Varios procesos servidores se corren concurrentemente.FTHM 2015 - I*

    FTHM 2015 - I

  • EscalabilidadSistemas distribuidos deben operar efectiva y eficientemente en diferentes escalas.Sistema distribuido prctico ms chico: dos estaciones y un servidor de archivos.Sistemas distribuidos grandes

    FTHM 2015 - I*

    FTHM 2015 - I

  • Ventajas- Relativamente fcil y econmico poner en conjunto sistemas compuestos de un gran nmero de procesadores, (CPUs), conectados en red.

    - Dos entidades trabajan ms rpido que una sola.

    - Necesidad de sincronizar los trabajos de cada componenteFTHM 2015 - I*

    FTHM 2015 - I

  • ObjetivosLimitaciones geogrficasSeguridad (En un sistema centralizado existe un nico punto de fallo)Aumento constante de Potencia de cmputo : Si la potencia del sistema llega a ser insuficiente (Adquirir un nuevo equipo MainFrame vs Adquirir computadoras personales)FTHM 2015 - I*

    FTHM 2015 - I

  • Aspectos clave en el Diseo de los Sistemas Operativos DistribuidosTolerancia a fallas.Transparencia a la ocurrencia (El usuario no debe notar otros usuarios en el sistema).Transparencia al paralelismo (Asignar los procesadores a las actividades del programa sin el concurso del programador).Fiabilidad (Fiabilidad global del sistema).Escalabilidad (Habilitar crecimiento de acuerdo a la demanda).

    FTHM 2015 - I*

    FTHM 2015 - I

  • Aspectos Bsicos de Diseo de Sistemas DistribuidosNamingComunicacinEstructura softwareAsignacin de cargaConsistenciaFTHM 2015 - I*

    FTHM 2015 - I

  • NamingNombramiento de los diferentes recursos Nombres deben de tener significados globalesInvolucra las siguientes consideraciones:La eleccin del tamao del nombre para cada tipo de recurso, (puede ser finito o potencialmente infinitio)Nombres deben de ser mapeados por identificadores de comunicacinUn nombre depende de su contexto, por lo que para resolver un nombre es necesario el nombre y un contextoFTHM 2015 - I*

    FTHM 2015 - I

  • ComunicacinComponentes separados lgica y fsicamente, por lo que necesitan comunicarse entre ellos para interactuarComunicacin involucra las operaciones siguientes:la transferencia de datosla sincronizacin de la recepcin con la emisinDos enfoques en sistemas distribuidos:paso de mensajesllamado de procedimiento remotoExisten dos modelos:modelo de comunicacin par a parmodelo de comunicacin grupalFTHM 2015 - I*

    FTHM 2015 - I

  • Estructura softwareSistemas centralizados son monolticos:conjunto abstracciones que se ofrece a las aplicaciones estan reunidas en una sola interfazSistemas distribuidosprogramas aplicacin pueden accesar diferentes servicios , en el cual cada uno cuenta con su propia interfaz para accesar recursosPrincipales nivelesaplicacionessoporte de lenguaje de programacinsistema operativohardwareFTHM 2015 - I*

    FTHM 2015 - I

  • Asignacin cargaDado un proceso, en donde se va a ejecutarModelo simple la capacidad de memoria y el desempeo de un procesador de una estacin determina el tamao mximo de tarea que se puede ejecutarModelosmodelo de servidor de estacinmodelo de piscina de procesadoresmodelo de la estacin de trabajomodelo de memoria compartida distribuidaFTHM 2015 - I*

    FTHM 2015 - I

  • ConsistenciaDiferentes procesos accesan y actualizan datos concurrentementeLos cambios no son instantaneosUn cierto conjunto de cambios debe de aparecer igual a todos los otros procesos que integran el sistema distribuido.Tipos consistencia:consistencia de actualizacinconsistencia de replicaconsistencia de cachconsistencia de fallasconsistencia de relojconsistencia de interfaz de usuarioFTHM 2015 - I*

    FTHM 2015 - I

  • Algoritmos DistribuidosDefinicin: abstraccin lgica de un sistema distribuido, se habla de un conjunto de procesos y de lneas de comunicacin virtualesSe habla de algoritmos concurrentes ejecutados en diferentes procesadores,Originalmente los algoritmos eran diseados para ejecutarse procesadores distribuidos en un rea grandeHoy en da incluye algoritmos usados en redes de rea local y multiprocesadores que comparten memoriaFTHM 2015 - I*

    FTHM 2015 - I

  • Algoritmos distribuidos aplicacinSon los algoritmos que definen una aplicacin Representan la interfaz final entre los usuarios y el sistema distribuidoSe apoyan en arquitecturas de software como:CORBA: Common Object Request Broker ArchitectureCOM: Component Object ModelEJB: Enterprise JavaBeansFTHM 2015 - I*

    FTHM 2015 - I

  • Algoritmos distribuidos controlEstn por abajo de las aplicacionesProporcionan dos tipos de serviciosProveedor de primitivasexclusin mutuaenvo/recepcin mensajescontrol de concurrenciaadministracin de archivosObservadores de propiedadesinterbloqueoterminacin de la ejecucinrecolectores de basuraFTHM 2015 - I*

    FTHM 2015 - I

  • Algoritmos de aplicacin y controlCTLi :control de la i-sima aplicacinAi: aplicacinFTHM 2015 - I*

    FTHM 2015 - I

  • Caractersticas algoritmos distribuidosDesconocimiento del nmero de procesosDesconocimiento de la topologa de la redEntradas independientes en sitios diferentesVarias programas ejecutandose al mismo tiempo, empezando en tiempos diferentes y operando a diferentes velocidadesNo determinismo en el procesador (processor nondeterminism)Tiempos entrega de mensajes diferentesOrden entrega de mensajes desconocidoFallas en la comunicacin y en los procesos FTHM 2015 - I*

    FTHM 2015 - I

  • Aplicaciones Algoritmos DistribuidosRedes de computadorasComputadoras multiprocesadoresRedes inalmbricas - computacin mvilFTHM 2015 - I*

    FTHM 2015 - I

  • Problemas a Resolver en las WANsConfiabilidad del intercambio de datosSeleccin de rutas de comunicacinControl de trficoPrevencin de cuellos de botellaSeguridadFTHM 2015 - I*

    FTHM 2015 - I

  • Problemas Comunes en LANsBroadcasting y sincronizacinDeteccin de terminacinAsignacin de recursosMantenimiento archivos distribuidosFTHM 2015 - I*

    FTHM 2015 - I

  • Computadoras MultiprocesadoresComputadora que consiste de diferentes procesadores generalmente ubicados dentro de un mismo espacio fsicoProcesadores homogneosPequea escala geogrficaObjetivo principal:mejorar la velocidad del clculoFTHM 2015 - I*

    FTHM 2015 - I

  • Los Algoritmos Distribuidos y los MultiprocesadoresImplementacin sistema envo de mensajesImplementacin memoria virtual compartidaBalance de cargaTolerancia a fallasFTHM 2015 - I*

    FTHM 2015 - I

  • Procesos CooperantesProcesos que interactuan para la solucin de un determinado problema, o para proporcionar un servicioComparten memoria en comnTrabajan sobre el mismo procesadorEjemplo: sistemas operativosFTHM 2015 - I*

    FTHM 2015 - I

  • Celdas de ManufacturaRobots conectados entre ellos a travs de un medio de comunicacin, cada uno desarrollando una actividad en particular, con un objetivo global en comn

    - ensamblaje- control de un determinado sistemaFTHM 2015 - I*

    FTHM 2015 - I

  • Computacin MvilWireless Local Area Networks o WLANs.Ausencia de cables como medio de comunicacin.Envo/recepcin de ondas electromagnticas que viajan del emisor al receptor a travs del espacio.Computadoras desatadas (untethered o tetherless computer).Computadoras y aplicaciones mviles.

    FTHM 2015 - I*

    FTHM 2015 - I

  • Problemas Resueltos por los Algoritmos DistribuidosRuteoInformacin de la ubicacin de la unidad mvil (almacenamiento y actualizacin)ConsistenciaSeguridadTransferencias de llamadasFTHM 2015 - I*

    FTHM 2015 - I

  • Algoritmos distribuidos?Qu distribuir? Datos ControlFTHM 2015 - I*

    FTHM 2015 - I

  • Distribuyendo los datosLa distribucin puede tomar diversas formas: Duplicacin ParticionamientoFTHM 2015 - I*

    FTHM 2015 - I

  • La Duplicacin de DatosExiste duplicacin de un dato x, si este se encuentra duplicado en n ejemplares x1, x2 .... xn, donde 1,2, .... n son los identificadores de los sitios que participan en el algoritmo distribuido.

    Asegurar la coherencia mutua de las copias a todo instantelas copias fsicas xi tengan el mismo valor xx1 = x2 = ...... xi ...... xn = xFTHM 2015 - I*

    FTHM 2015 - I

  • Ejemplo de duplicacinx1x2x3Pierre 500Sam 700Juan 900Pierre 500Sam 700Juan 900Pierre 500Sam 700Juan 900FTHM 2015 - I*

    FTHM 2015 - I

  • Particin de DatosHablamos de particionamiento de datos cuando, estando accesibles desde todos los sitios, los datos son particionados de tal forma que cada una de las particiones se encuentra sobre un sitio dado

    Para obtener la totalidad de la informacin se tieneque consultar a todo el mundoI = (x1 + x2 + ... xi ... + xn)FTHM 2015 - I*

    FTHM 2015 - I

  • Ejemplo de Particinx1x2x3Pierre 500

    Sam 500

    Juan 900FTHM 2015 - I*

    FTHM 2015 - I

  • Distribuyendo el ControlNo existe una jerarqua estticaNo hay un proceso lder que en permanencia asegure el controlPuede ser necesario un algoritmo de asignacin de funcionesMuy a menudo depende del problema que se intenta resolverFTHM 2015 - I*

    FTHM 2015 - I

    **************************