Está en la página 1de 87

Sistemas Distribuidos.

Unidad 1. Fundamentos de sistemas distribuidos.

M. en C. Jos Francisco Delgado Orta

Contenido

Fundamentos de los Sistemas distribuidos Caractersticas de un sistema distribuido.


Ventajas y desventajas contra los sistemas centralizados. Modelo cliente/servidor. Caractersticas de hardware. Caractersticas de software. Direccionamiento lgico y fsico.

Objetivos de los sistemas distribuidos. Complejidad de los sistemas distribuidos. Tcnicas de construccin. Requerimientos de aplicacin. Arquitectura bsica.

Fundamentos de los Sistemas distribuidos


Definicin de un Sistema Distribuido. [Coulouris, 2001]
Es una entidad en la cual, los componentes del hardware o el software localizados en una red, se comunican y coordinan sus acciones solo por el envo-recepcin de mensajes.

Fundamentos de los Sistemas distribuidos


Definicin de Sistema Distribuido. [Tanenbaum, 1996]
Un sistema distribudo es aquel al que sus usuarios ven como un ordinario sistema operativo centralizado, sin embargo, se ejecuta en diferentes e independientes CPUs. El concepto clave aqu es la transparencia, en otras palabras el uso de diversos procesadores deber ser invisible (transparente) al usuario. Otra forma de expresar la misma idea es diciendo que el usuario vera el sistema como un uniprocesador virtual y no como una coleccin de mquinas diferentes.

Fundamentos de los Sistemas distribuidos


Caractersticas de los sistemas distribuidos. Concurrencia. En una red de computadoras , la ejecucin de un programa concurrente marca la pauta. As YO puedo trabajar en mi PC mientras T trabajas en la tuya. La capacidad del sistema de manejar recursos compartidos se puede incrementar agregando mas recursos. Por ejemplo, mas computadoras a la red.

Fundamentos de los Sistemas distribuidos


Caractersticas de los sistemas distribuidos Falta de existencia de un reloj global. Cuando los programas requieren cooperacin entre los procesos, estos coordinan sus acciones intercambiando mensajes. La coordinacin cerrada depende de una idea compartida del tiempo en el cual las acciones de los programas ocurren. Esto limita la medicin con la cual, las computadoras en una red puedan sincronizar sus relojes y no existe una nocin global del tiempo correcto. Esto es una consecuencia del hecho de que la comunicacin se enva solo por mensajes a travs de la red.

Fundamentos de los Sistemas distribuidos


Caractersticas de los sistemas distribuidos Fallos independientes. Todos los sistemas de computo pueden fallar y es responsabilidad del diseador del sistema planear las consecuencias de fallos futuros. Los fallos en la red resultan en forma aislada en las computadoras conectadas a ella, sin embargo, un buen diseo garantiza que el resto de los equipos no detienen su ejecucin. Cada componente del sistema puede fallar en forma independiente.

Fundamentos de los Sistemas distribuidos


Internet

Fundamentos de los Sistemas distribuidos


Ejemplos de Sistemas distribuidos.

Internet Intranet

Computo Mvil y Ubicuo

Fundamentos de los Sistemas distribuidos


Ejemplos de sistemas distribuidos Internet
Es una coleccin de redes de computadoras de muchos tipos diferentes. Los programas corren en las computadoras, comunicndolas a travs del intercambio de mensajes, empleando algn medio de comunicacin.

Fundamentos de los Sistemas distribuidos


Intranet
Es una porcin de Internet que esta administrada independientemente y tiene limites que pueden configurarse para forzar polticas de seguridad local. Un intranet se conecta a internet a travs de un ruteador, el cual permite a los usuarios dentro de la intranet hacer el uso de los servicios tales como Internet o correo electrnico, y permite a los usuarios de otras intranets accesar a los servicios que sta proporciona.
Para gestionar los mensajes de entrada y salida se utiliza un cortafuegos, que adems, agrega reglas de seguridad sobre la fuente o destino de los mensajes para validar uso de la red a los usuarios

Fundamentos de los Sistemas distribuidos


Intranet

Fundamentos de los Sistemas distribuidos


Principales problemas que trae el diseo de componentes para el uso en intranets:

Sistemas de archivos necesarios para compartir la informacin.

Uso de Cortafuegos para impedir accesos a los servicios requeridos cuando los recursos se comparten entre usuarios internos y externos de la intranet.
El costo del mantenimiento. software de instalacin y

Fundamentos de los Sistemas distribuidos


La portabilidad de muchos de los dispositivos, junto con su habilidad para conectarse en forma conveniente a las redes en diferentes lugares, hace posible el computo mvil.

El computo mvil [Kleinrock, 1997] es el desarrollo de tareas computacionales mientras el usuario se encuentra en movimiento.

Fundamentos de los Sistemas distribuidos


El computo ubicuo [Weiser, 1993] es el aprovechamiento de los dispositivos computacionales, pequeos, y baratos que estn presentes en los usuarios. Por ejemplo, la casa y la oficina. El trmino ubicuo sugiere que los dispositivos pequeos de cmputo se convertirn en objetos persuasivos, y que su comportamiento computacional estar ntimamente relacionado con sus funciones fsicas.

Fundamentos de los Sistemas distribuidos


Recursos Compartidos y la Web Para compartir recursos en una red internet, se utilizan los servicios. Un Servicio es una parte distinta de un sistema de computo que administra una coleccin de recursos relacionados y presenta su funcionalidad a los usuarios y las aplicaciones. Ejemplos de servicios:
Servicio de impresin. Servicios de archivos.

Fundamentos de los Sistemas distribuidos


La World Wide Web
Es un sistema desarrollado para la publicacin y acceso a recursos y servicios a travs de Internet. Esto a travs de navegadores como Internet Explorer y Netscape.

Fundamentos de los Sistemas distribuidos


La Web se basa en tres componentes tecnolgicos principales:

El lenguaje de Marcado de Hipertexto (HTML) es un lenguaje para especificacin de contenidos y capas de paginas que se muestran en los navegadores Web Los localizadores de Recursos Uniformes (URLs), los cuales identifican los documentos y otros recursos almacenados como parte de la Web.

Una arquitectura de sistema cliente-servidor, con reglas estndares para la interaccin (El protocolo de Transferencia de Hiper Texto, HTTP) por el cual los navegadores y otros clientes localizan documentos y otros recursos de los servidores Web.

Caractersticas de los Sistemas Distribuidos


Retos en el diseo de Sistemas Distribuidos Heterogeneidad Apertura Seguridad Escalabilidad Manejo de Fallos Concurrencia Transparencia

Caractersticas de los Sistemas Distribuidos


Heterogeneidad El reto es disear sistemas distribuidos que sean capaces de comunicar los siguientes elementos:
Redes de Computadoras Hardware de Computadoras. Sistemas Operativos Lenguajes de Programacin. Implementaciones por diferentes desarrolladores
Middleware

Caractersticas de los Sistemas Distribuidos


Apertura Los sistemas abiertos se caracterizan por el hecho que sus interfaces clave estn publicadas. Los sistemas distribuidos abiertos se basan en la provisin de un mecanismo de comunicacin uniforme e interfaces publicadas para el acceso a recursos compartidos. Los sistemas distribuidos abiertos se pueden construir de hardware y software heterogneos, posiblemente de diferentes fabricantes. Pero la estructura de cada componente para el estndar de publicacin debe ser cuidadosamente probado y verificado para que el sistema trabaje correctamente.

Caractersticas de los Sistemas Distribuidos


Seguridad Negacin de ataques de servicio. Otro problema de seguridad se presenta cuando un usuario puede desear interrumpir un servicio por alguna razn. Seguridad del cdigo mvil. El cdigo mvil requiere ser manejado cuidadosamente. Por ejemplo, recepcin de programas ejecutables como parte de un correo electrnico, ya que los efectos de correr un programa son impredecibles.

Caractersticas de los Sistemas Distribuidos


Escalabilidad
Los sistemas distribuidos operan eficientemente y efectivamente en diferentes escalas, desde un pequeo intranet hasta el Internet. Un sistema es descrito como escalable si ser efectivo cuando exista un incremento significativo en el numero de recursos y el numero de usuarios.

Caractersticas de los Sistemas Distribuidos


Manejo de Fallos Deteccin de fallos. El reto es asimilar la presencia de fallos que no se pueden detectar pero que pueden suceder. Enmascaramiento de fallos. Algunos daos que se han detectado se pueden ocultar o hacerlos menos severos. Por ejemplo: 1. Mensajes que pueden ser retransmitidos cuando fallan al llegar a su destino. 2. Informacin de los archivos que se pueden escribir en un par de discos si uno se corrompe.

Tolerancia a fallos. La mayora de los servicios en Internet exhibe fallos, de tal forma que no seria practico para ellos detectar y ocultar todos los fallos cuando ocurren en una red con muchos componentes.

Caractersticas de los Sistemas Distribuidos


Recuperacin de Fallos. La recuperacin involucra el diseo del software tal que el estado permanente de los datos se pueda recuperar rolled back despus de que un servidor se ha colapsado. Redundancia. Los servicios se pueden realizar para tolerar fallos por el uso de componentes redundantes.
Por ejemplo: I. Si hubiera siempre al menos dos diferentes rutas entre cualquier dos ruteadores en Internet.

2. En el Sistema de Nombres de Dominio


(DNS), cada tabla de nombres se replica en al menos dos diferentes servidores. 3. Una base de datos puede replicarse en muchos servidores para asegurar que los datos permanecen accesibles despus del fallo en algn servidor. Cuando ocurra algn fallo en un servidor, los clientes de

Caractersticas de los Sistemas Distribuidos


Concurrencia. Los servicios y las aplicaciones proporcionan
recursos que se pueden compartir por clientes en un sistema distribuido. Existe por consiguiente una posibilidad de que varios clientes intentaran accesar a recursos compartidos al mismo tiempo. Para ello es posible utilizar la programacin de hilos concurrentes encapsulados dentro de un objeto, para evitar conflictos con otros recursos y producir resultados inconsistentes.

Caractersticas de los Sistemas Distribuidos


Transparencia. La transparencia se define como el encubrimiento del usuario y la aplicacin de la separacin de los componentes en un sistema distribuido.

Caractersticas de los Sistemas Distribuidos


Ocho formas de transparencia identificados por ANSA (Advanced Networked Systems Architecture Project) [Ansa, 1989] y el Modelo de referencia de las organizaciones para Procesamiento Distribuido Abierto (RM-ODP)[ISO 1992] Transparencia de Accesos. Habilita recursos locales y remotos para ser accesados usando operaciones idnticas. Transparencia en la localizacin. Habilita recursos para ser accesados sin conocimiento de su localizacin. Transparencia de Replicacin. Habilita mltiples instancias de recursos para ser usados para incrementar la confiabilidad y desempeo sin el conocimiento de las replicas de los usuarios o programadores de la aplicacin.

Caractersticas de los Sistemas Distribuidos

Transparencia de Fallos. Habilita el encubrimiento de fallos, permitiendo a los usuarios y los programas de aplicacin completar sus tareas a pesar de los fallos en los componentes de hardware y software. Transparencia de Movilidad. Permite el movimiento de los recursos y clientes dentro de un sistema sin afectar la operacin de los usuarios o los programas. Transparencia de desempeo. Permite configurar el sistema para mejorar el desempeo y cargas variables. Transparencia de escalamiento. Permite al sistema y las aplicaciones para expander en escala sin cambiar la estructura del sistema o los algoritmos de aplicacin.

Caractersticas de los Sistemas Distribuidos


Ventajas de los sistemas distribuidos con respecto de los centralizados.

Economa: es la razn nmero uno de la tendencia hacia los sistemas distribuidos ya que estos sistemas tienen en potencia una proporcin precio/desempeo mucho mejor que la de un sistema centralizado. Velocidad: un sistema distribuido puede tener mayor poder de cmputo que una mainframe. Distribucin inherente: otra razn para la construccin de un sistema distribuido es que ciertas aplicaciones son distribuidas en forma inherente; es decir, algunas aplicaciones utilizan mquinas que estn separadas a cierta distancia.

Caractersticas de los Sistemas Distribuidos


Ventajas de los Sistemas distribuidos contra los Sistemas Centralizados.

Confiabilidad: un sistema distribuido ofrece mayor confiabilidad: al distribuir la carga de trabajo en muchas mquinas, la falla de un circuito descompondr a lo ms una mquina y el resto seguir intacto. Crecimiento por incrementos: si se necesita aadir poder de cmputo a la compaa, con un sistema distribuido, podran aadirse ms procesadores al sistema, lo que permite un desarrollo gradual conforme surjan las necesidades.

Caractersticas de los Sistemas Distribuidos


Desventajas de los sistemas distribuidos

Software: No hay mucha experiencia en el diseo, implantacin y uso del software distribuido, adems existe poco software para los sistemas distribuidos en la actualidad.
Redes: Una vez que el sistema llega a depender de la red, la prdida o saturacin de sta puede negar algunas de las ventajas que el sistema distribuido deba conseguir. Seguridad: si las personas pueden tener acceso a los datos en todo el sistema, entonces tambin pueden tener acceso a datos con los que no tienen nada que ver.

Caractersticas de los Sistemas Distribuidos


Caractersticas del Hardware. Con el paso de los aos, se han propuesto diversos esquemas de clasificacin para los sistemas de cmputo con varios CPU, pero ninguno de ellos ha tenido un xito completo ni se ha adoptado de manera amplia. A continuacin se muestra la taxonoma presentada por Flynn (1972) que considera dos caractersticas esenciales: el nmero de flujo de instrucciones y nmero de flujos de datos.

Caractersticas de los Sistemas Distribuidos


Caractersticas del Hardware

SISD. (Single Instruction, Single Data). Una computadora con un flujo de instrucciones y uno de datos. Todas las computadoras tradicionales de un procesador caen dentro de esta categora.
SIMD (Single Instruction, Multiple Data). Un flujo de Instrucciones y varios flujos de datos. Este tipo se refiere a ordenar procesadores con unidad de instruccin que busca una instruccin y despus instruye a varias unidades de datos para que la lleven a cabo en paralelo, cada una con sus propios datos. MISD (Multiple Instruction, Single Data). Un flujo de varias instrucciones y un flujo de datos. MIMD(Multiple Instruction, Multiple Data). Un grupo de computadoras independientes, cada una con su propio contador del programa y datos. Todos los sistemas distribuidos son MIMD.

Caractersticas de los Sistemas Distribuidos


Caractersticas del Hardware
Multiprocesadores con base en buses
Los multiprocesadores con base en buses constan de cierta cantidad de CPU, conectados a un bus comn, junto con un mdulo de memoria. Una configuracin sencilla consta de un plano de base de alta velocidad o tarjeta madre, en el cual se pueden insertar las tarjetas de memoria y el CPU. Un bus tpico tiene 32 o 64 lneas de direcciones, 32 o 64 lneas de datos y 32 o ms lneas de control, todo lo cual opera en paralelo. Para leer una palabra de memoria, un CPU coloca la direccin de la palabra deseada en las lneas de direcciones del bus y coloca una seal en las lneas de control adecuadas para indicar que desea leer. La memoria responde y coloca el valor de la palabra en las lneas de datos para permitir la lectura de sta por parte del CPU solicitante. La escritura funciona de manera similar.

Caractersticas de los Sistemas Distribuidos


Multiprocesadores con conmutador Para construir un multiprocesador con ms de 64 procesadores, es necesario un mtodo distinto par conectar cada CPU con la memoria. Una posibilidad es dividir la memoria en mdulos y conectarlos a las CPU con un conmutador de cruceta, cada CPU y cada memoria tiene una conexin que sale de l. En cada interseccin est un delgado conmutador de punto de cruce electrnico que el hardware puede abrir y cerrar.

Cuando un CPU desea tener acceso a una memoria particular, el conmutador del punto de cruce que los conecta se cierra de manera momentnea, para permitir dicho acceso. La virtud del conmutador de cruceta es que muchos CPU pueden tener acceso a la memoria al mismo tiempo, aunque si dos CPU intentan tener acceso a la misma memoria en forma simultnea, uno de ellos deber esperar.

Caractersticas de los Sistemas Distribuidos

Cruceta

Caractersticas de los Sistemas Distribuidos


Multicomputadoras con base en buses Por otro lado, la construccin de una multicomputadora es fcil. Cada CPU tiene conexin directa con su propia memoria local. El nico problema restante es la forma en que los CPU se comunicarn entre s. Es claro que aqu tambin se necesita cierto esquema de interconexin, pero como slo es para la comunicacin entre un CPU y otro, el volumen del trfico ser de varios rdenes menor en relacin con el uso de una red de interconexin para el trfico CPU-memoria. Multicomputadoras con conmutador Se han propuesto y construido varias redes de interconexin, pero todas tienen la propiedad de que cada CPU tiene acceso directo y exclusivo a su propia memoria particular. Hay dos topologas populares, una retcula y un hipercubo. Las retculas se basan en las tarjetas de circuitos impresos. Se adecuan mejor a los problemas con naturaleza bidimensional inherente, como la teora de grafos o la visin computacional.

Caractersticas de los Sistemas Distribuidos


Multicomputadoras con conmutador Un hipercubo es un cubo n-dimensional. Se puede pensar como dos cubos ordinarios, cada uno de los cuales cuenta con 8 vrtices y 12 aristas. Cada vrtice es un CPU. Cada arista es una conexin entre dos CPU. Se conectan los vrtices correspondientes de cada uno de los cubos.

Hipercubo de dimensin 4

Caractersticas de los Sistemas Distribuidos


Caractersticas del Software.

Aunque el hardware es importante, el software lo es ms. La imagen que presenta y la forma de pensar de los usuarios de un sistema, queda determinada en gran medida por el software del sistema operativo, no por el hardware.

Se puede distinguir dos tipos de sistemas operativos para los de varios CPU: los dbilmente acoplados y los fuertemente acoplados.
El software dbilmente acoplado permite que las mquinas y los usuarios de un sistema distribuido sean independientes entre s en lo fundamental, pero que interacten en cierto grado cuando sea necesario. En el software fuertemente acoplado el programa de aplicacin y el sistema operativo necesario para soportarlo, estn muy acoplados.

Caractersticas de los Sistemas Distribuidos


Caractersticas del Software.
Sistemas Operativos de red Los Sistemas Operativos de red permiten a los usuarios en estaciones de trabajo independientes la comunicacin por medio de un sistema compartido de archivos, pero dejan que cada usuario domine su propia estacin de trabajo. Sistemas realmente distribuidos Los sistemas operativos distribuidos convierten toda la coleccin de hardware y software en un sistema integrado, muy parecido a un sistema tradicional de tiempo completo. Sistemas de multiprocesador con tiempo compartido Los multiprocesadores con memoria compartida tambin ofrecen la imagen de nico sistema, pero lo hacen mediante la va de centralizar todo, por lo que en realidad, este caso es un sistema. Los multiprocesadores con memoria compartida no son sistemas distribuidos.

Caractersticas de los Sistemas Distribuidos


Caractersticas del Software Sistemas Operativos Distribuidos
Sistema DOS Descripcin Sistema operativo fuertemente acoplado para multiprocesadores y multicomputadoras homogneas Objetivo Principal Administrar recursos de hardware

NOS

Sistema operativo dbilmente acoplado para computadoras heterogneas (LAN y WAN)


Capa adicional de implementacin de NOS para servicios de propsito general.

Ofrecer servicios locales para clientes remotos


Proporcionar transparencia en la distribucin

MIDDLEWARE

Caractersticas de los Sistemas Distribuidos


Sistemas Operativos Multicomputadora Se diferencian de los sistemas multiprocesador porque las estructuras de datos para la administracin de recursos del sistema no se pueden compartir fcilmente colocndolas en la memoria compartida. El nico medio de comunicacin es a travs de mensajes.

Asume que el Hardware puede ser heterogneo

Caractersticas de los Sistemas Distribuidos


Sistemas de Memoria Compartida Distribuida La practica muestra que la programacin de multicomputadoras es mas difcil que la programacin multiprocesador, la razn es que los procesos de acceso a datos compartidos y la utilizacin de las primitivas de sincronizacin simple.
a) Memoria compartida distribuida sobre cuatro PCs b) El CPU1 hace referencia a la pgina 10

c) Situacin si la pgina 10 es de solo lectura y se utiliza la replicacin

Caractersticas de los Sistemas Distribuidos


Comparativa entre los Sistemas Operativos Distribuidos, de Red y Middleware
Elemento Sistema Operativo Distribuido Multiprocesad or Grado de Transparenci a Mismo SO en todos los nodos? Numero de copias del SO Forma de comunicacin Administraci n de recursos Escalabilidad Apertura Muy Alto Multicomputador a Alto Sistema Operativo de Red Bajo Middleware basado en Sistema Distribuido Alto

Si

Si

No

No

Memoria compartida Global, central No Cerrado

Mensajes Global, Distribuida Moderada Cerrado

Archivos Por nodo Si Abierto

Modelo Especfico Por nodo Variable Abierto

Complejidad de los Sistemas Distribuidos


El nmero de conmutadores del esquema de retcula puede resultar prohibitivo y costoso en el diseo de un Sistema Distribuido. Por ejemplo, en la siguiente tabla se muestra la relacin para el diseo con retculas:
Nmero de 50 computadoras Nmero de Crucetas
2500

75
5625

100
10000

125
15625

150
22500

175
30625

200
40000

n2

Complejidad en el diseo: O( )

Complejidad de los Sistemas Distribuidos


Otros esquemas conmutadores, por omega precisan ejemplo, menos la red

Posee conmutadores 2 x 2:
Cada uno tiene 2 entradas y 2 salidas. Cada conmutador puede dirigir cualquiera de las entradas en cualquiera de las salidas. Eligiendo los estados adecuados de los conmutadores, cada cpu podr tener acceso a cada memoria.

Para n cpu y n memorias se precisan:


n etapas de conmutacin. Cada etapa tiene log2 n conmutadores para un total de n log2 n conmutadores; este nmero es menor que n x n del esquema anterior, pero sigue siendo muy grande para n grande

Complejidad de los Sistemas Distribuidos

Red alfa-omega

Nmero de elementos

Red alfa omega Red alfa omega (1 nivel) (n niveles)

Retcula

n 50 75 100 125 150 175 200 1.024

log2 n 5,64385619 6,22881869 6,64385619 6,96578428 7,22881869 7,45121111 7,64385619 10

n log2 n n2 282 2.500 467 5.625 664 10.000 871 15.625 1.084 22.500 1.304 30.625 1.529 40.000 10.240 1.048.576

El modelo cliente/servidor
Interaccin comn en una arquitectura cliente/servidor
Protocolo

Un Servidor es una implementacin de un proceso, un servicio especfico. Un Cliente es un proceso que pide un servicio de un servidor enviando una peticin y subsecuentemente esperando la respuesta del servidor.

El modelo cliente/servidor
Considerando que muchas aplicaciones cliente- servidor esperan soportar los accesos de los usuarios hacia las bases de datos, se han distinguido tres niveles (o capas) en las aplicaciones cliente-servidor:
1. El nivel de interfaz de usuario 2. El nivel de procesamiento 3. El nivel de datos
Ejemplo: Bsqueda en Internet

El modelo cliente/servidor
Arquitectura de niveles (capas)
El nivel de interfaz de usuario. Consiste en todos los programas que permiten a los usuarios finales interactuar con las aplicaciones.

El modelo Cliente/Servidor
Arquitectura de niveles (capas) Nivel de procesamiento A grandes rasgos contiene: El modelado de la interaccin, los procesos de la aplicacin y comandos de la interfazEjemplo: Bsqueda Se compone por:
Todas las arquitecturas Todos los algoritmos Reglas y modelos de decisin
Secuencial

El modelo Cliente/Servidor
Interaccin en el esquema de capas del modelo Cliente/Servidor

El modelo Cliente/Servidor
Arquitectura de niveles (capas) Nivel de Datos Contiene los programas que mantienen los datos actuales sobre los cuales operan las aplicaciones.
Ejemplo: DBMS

El modelo Cliente/Servidor

Organizaciones alternas Cliente/Servidor

Accesos Remotos

El modelo Cliente/Servidor
Clientes que Individuales invocan a Servidores

El modelo Cliente/Servidor
Un servicio proporcionado por mltiples servidores.

El modelo Cliente/Servidor
Un servidor Proxy de Tipo Web

El modelo Cliente/Servidor
Una aplicacin distribuida basada en procesos igual a igual

El modelo Cliente/Servidor
Applets de Tipo Web

Direccionamiento lgico y fsico


Una direccin generada por la CPU se denomina direccin lgica en cambio a la que es percibida por unidad de memoria se denomina direccin fsica. Los esquemas de vinculacin de direcciones durante la compilacin y durante la carga dan pie a un entorno en el que las direcciones lgicas y fsicas son las mismas. En cambio, la ejecucin del esquema de vinculacin de direcciones durante la ejecucin produce un entorno en el que las direcciones lgicas y fsicas difieren. En este caso la direccin lgica suele llamarse direccin virtual.

Direccionamiento lgico y fsico


El proceso desde que los datos son incorporados al ordenados hasta que se transmiten al medio se llama encapsulacin. Estos datos son formateados, segmentados, identificados con el direccionamiento lgico y fsico para finalmente ser enviados al medio. A cada capa del modelo OSI le corresponde una PDU (Unidad de Datos) siguiendo por lo tanto el siguiente orden de encapsulamiento: DATOS-SEGMENTOS-PAQUETESTRAMAS-BITS CAPA TRANSMITE
APLICACION PRESENTACION SESION TRANSPORTE RED ENLACE DE DATOS SEGMENTOS PAQUETES TRAMAS DATOS

FISICA

BITS

Direccionamiento lgico y fsico

Direccionamiento lgico y fsico


Debido a que posiblemente la cantidad de los datos sean demasiados, la capa de transporte desde de origen, se encarga de segmentarlos para as ser empaquetados debidamente, esta misma capa en el destino se encargara de reensamblar los datos y colocarlos en forma secuencial, ya que no siempre llegan a su destino en el orden en que han sido segmentados, as mismo acorde al protocolo que se este utilizando habr correccin de errores. Estos segmentos son empaquetados (paquetes o datagramas) e identificados en la capa de red con la direccin lgica o IP correspondiente al origen y destino. Ocurre lo mismo con la direccin MAC (Control de Acceso al Medio) en la capa de enlace de datos formndose las tramas o marcos para ser transmitidos a travs de alguna interfaz.

Objetivos de un Sistema Distribuido


Objetivos de un Sistema Distribuido Datos compartidos: Un sistema distribuido permite que varios usuarios tengan acceso a una base de datos comn.

Dispositivos compartidos: De igual manera, se pueden compartir perifricos entre diversos usuarios como puede ser una impresora. Comunicacin: un sistema distribuido facilita la comunicacin entre computadoras aisladas con el e-mail, por ejemplo.

Flexibilidad: Un sistema distribuido difunde la carga de trabajo entre las mquinas disponibles en la forma ms eficaz en cuanto a los costos.
la ventaja respecto a PCs

Estos factores brindan independientes.

Requerimientos de Aplicacin
Temas de Prestaciones
Capacidad de Respuesta. Productividad. Balance de cargas computacionales.

Calidad en el Servicio
Facilidad de adaptabilidad para configuraciones variables del sistema Disponibilidad de recursos.

Requerimientos de Aplicacin
Uso de Cach y de Replicacin El protocolo de consistencia de la cach puede configurarse para proporcionar a los navegadores copias recientes de los recursos controlados por el servidor (proxy o web). El navegador proxy puede validar una respuesta de la cach comprobando con el servidor original para ver si estaba actualizada. Si la comprobacin falla, el servidor devuelve una copia actualizada que se guardar en la cach en lugar de la antigua.

Los servidores o navegadores utilizan un tiempo de expiracin del recurso que en conjunto con el tiempo de ejecucin del proceso constituyen la edad de una respuesta, desde que se almacena en la memoria cach y el tiempo del servidor.

Requerimientos de Aplicacin
Fiabilidad
oCorreccin oTolerancia a fallos oSeguridad

Arquitectura bsica
Elementos que conforman arquitectura bsica:
Modelos de Interaccin Modelo de fallos Modelo de Seguridad

una

Arquitectura bsica
Modelos de Interaccin Procesos significativos que afectan los procesos interactuantes de un Sistema Distribuido:
Las prestaciones de las comunicaciones son con frecuencia una caracterstica limitada. Es posible mantener una nica nocin global del tiempo

Arquitectura bsica
Interaccin. Factores significativos que afectan los procesos de interaccin:

Prestaciones de comunicaciones.

los

canales

de

Relojes de computadoras y eventos de temporizacin.

Arquitectura bsica
Interaccin.
Prestaciones de los canales de comunicaciones. Retardos entre envos y recepcin de un mensaje.
Retardo para acceder a la red. El tiempo empleado por los servicios comunicacin del sistema operativo.

de

Ancho de banda. Cantidad total de informacin que puede transmitirse en un intervalo de tiempo dado. La fluctuacin (jitter) es la variacin del tiempo invertido en completar el reparto de una serie de mensajes.

Arquitectura bsica
Interaccin. Relojes de computadoras y eventos de temporizacin. Tasa de deriva del reloj. Es la proporcin en que el reloj de una computadora difiere del reloj de referencia perfecto. Dos variantes del modelo de interaccin: Sistemas Distribuidos Sncronos y Asncronos.

Arquitectura bsica
Interaccin. Sistemas Distribuidos Sncronos. Limites [Hadzilacos y Toueg, 1994]

El tiempo de ejecucin de cada etapa de un proceso tiene ciertos limites inferior y superior conocidos. Cada mensaje transmitido sobre un canal se recibe en un tiempo limitado conocido. Cada proceso tiene un reloj local cuya tasa de deriva sobre el tiempo real tiene un lmite conocido.

Arquitectura bsica
Interaccin.
Sistemas Distribuidos Asncronos Se refiere al diseo de un sistema en donde no existan limites:
Por ejemplo: La velocidad de procesamiento Los retardos en la transmisin de mensajes. Las tasas de deriva de reloj.

Arquitectura bsica
Ordenamiento de eventos. Ejemplo, envo de mensajes.

Tiempo de ejecucin en un computador para cada operacin: (max-min+1)

Arquitectura bsica
Modelo de Fallos Define las formas en que puede ocurrir el fallo para dar una comprensin de los efectos de los mismos.

Arquitectura bsica
Fallos por omisin. Se refieren a casos en los que los procesos o los canales de comunicacin no consiguen realizar acciones que se suponen que pueden hacer.

Arquitectura bsica
Fallos por omisin de comunicaciones
Clase de fallo Fallo-parada Afecta a Proceso Descripcin El proceso para y permanece parado. Otros procesos pueden detectar este estado.

Ruptura

Proceso

El proceso para y permanece parado. Otros procesos no pueden ser capaces de detectar este estado.
Un mensaje insertado en el bfer de mensajes salientes nunca llega al bfer de mensajes entrantes del otro extremo. Un proceso completa enva, pero el mensaje no es colocado en su bfer de mensajes salientes. El mensaje es colocado en la cola de mensajes del proceso, pero el proceso no lo recibe. El proceso/canal presenta un comportamiento arbitrario: puede enviar/transmitir arbitrariamente mensajes en instantes arbitrarios, cometer omisiones,

Omisin

Canal

Omisin del envo Omisin de recepcin Arbitrario (Bizantino)

Proceso

Proceso

Proceso o canal

Arquitectura bsica
Fallos de temporizacin Principales fallos
Causa del fallo Reloj Afecta a Proceso Descripcin El reloj local del proceso excede el tiempo lmite de su tasa de deriva sobre el tiempo real. El proceso excede el lmite sobre el intervalo entre dos pasos La transmisin de un mensaje toma mas tiempo que el limite permitido.

Prestaciones

Proceso

Prestaciones

Canal

Arquitectura bsica
Fiabilidad y Comunicacin uno a uno.
VALIDEZ. Cualquier mensaje en el buffer de salida ser hecho llegar eventualmente al bfer de mensajes entrantes. INTEGRIDAD. El mensaje recibido es idntico al enviado y no se reparten mensajes pro duplicado

FIABILIDAD

AMENAZAS DE INTEGRIDAD: 1. Protocolos que no eviten la duplicidad de mensajes. 2. Usuarios malintencionados que repitan mensajes antiguos o inserten mensajes falsos

Arquitectura bsica
Modelo de Seguridad
La seguridad de un sistema distribuido puede lograrse asegurando los procesos y los canales empleados para sus interacciones y protegiendo los objetos que encapsulan contra el acceso no autorizado.

Arquitectura bsica
Modelo de Seguridad

Derechos de acceso: especifican quien tiene permitido aplicar operaciones de un objeto. Principal: es la asociacin con cada invocacin y cada resultado sobre el cual surge un problema.

Arquitectura bsica
Modelo de Seguridad El enemigo

Tipos de amenazas de un enemigo potencial: Amenazas a procesos Amenazas a los canales de comunicacin Denegacin de Servicio

Criptografa Autenticaci n

Arquitectura bsica
Modelo de Seguridad
Criptografa Es la ciencia de mantener los mensajes seguros. Se basa en algoritmos de encriptacin que emplean claves secretas para transformar datos, de forma que solo se pueda revertir el proceso con la clave de desencriptado correspondiente Encriptacin. Es el proceso de trastocar el mensaje de modo que quede oculto el contenido.

Arquitectura bsica
Modelo de Seguridad
Canales Seguros

Asegura la PRIVACIDAD Y LA INTEGRIDAD de los datos Las identidades de los principales son conocidas por cada proceso Cada mensaje incluye un sello de carcter temporal, para prevenir el reenvo o la reordenacin de los mensajes. EJEMPLOS DE CANALES SEGUROS: Redes Privadas Virtuales (VPN) y protocolo de capa de sockets segura

Por su atencin

GRACIAS

También podría gustarte