Está en la página 1de 43

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Concepto, caractersticas y factores que han afectado un Sistema Distribuido. Ventajas y Desventajas de Sistemas Distribuidos. Categorias de los Sistemas Distribuidos. Sistema Operativo Distribuido y sus caractersticas. Complejidad y aspectos que intervienen en el diseo de un Sistema Operativo Distribuido. Modelo de Construccin.

Concepto de Sistemas Distribuidos.


Es un concepto poco claro de definir. Coleccin de elementos de cmputo autnomo que se encuentran fsicamente separados y no comparten una memoria comn, se comunican entre s a travs del intercambio de mensajes utilizando un medio de comunicacin. Los sistemas autnomos pueden tener caractersticas no homogneas.

Caractersticas de los Sistemas Distribuidos.


Cada elemento de computo tiene su propia memoria y su propio Sistema Operativo. Control de recursos locales y remotos. Sistemas Abiertos (Facilidades de cambio y crecimiento). Plataforma no standard ( Unix, NT, Intel, RISC, Etc.). Medios de comunicacin ( Redes, Protocolos, Dispositivos, Etc.). Capacidad de Procesamiento en paralelo. Dispersin y parcialidad.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Factores que han afectado el desarrollo de los Sistemas Distribuidos.


Avances Tecnolgicos. Nuevos requerimientos. Globalizacin

Aspectos Externos ( Culturales, Polticos, Econmicos ). Integracin.

Ventajas y Desventajas de los Sistemas Distribuidos Ventajas:


Procesadores ms poderosos y a menos costos

Desarrollo de Estaciones con ms capacidades Las estaciones satisfacen las necesidades de los usuarios. Uso de nuevas interfaces.

Avances en la Tecnologa de Comunicaciones.


Disponibilidad de elementos de Comunicacin. Desarrollo de nuevas tcnicas.

Comparticin de Recursos.

Dispositivos (Hardware).

. Programas (Software).

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Eficiencia y Flexibilidad.

Respuesta Rpida. Ejecucin Concurrente de procesos (En varias computadoras). Empleo de tcnicas de procesamiento distribuido.

Disponibilidad y Confiabilidad.

Sistema poco propenso a fallas (Si un componente no afecta a la disponibilidad del sistema). Mayores servicios que elevan la funcionalidad ( Monitoreo, Telecontrol, Correo Elctrico, Etc.).

Crecimiento Modular.

Es inherente al crecimiento. Inclusin rpida de nuevos recursos. Los recursos actuales no afectan.

Desventajas:
Requerimientos de mayores controles de procesamiento. Velocidad de propagacin de informacin ( Muy lenta a veces). Servicios de replicacin de datos y servicios con posibilidades de fallas. Mayores controles de acceso y proceso ( Commit ). Administracin ms compleja. Costos.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Categoras de los sistemas Distribuidos.


Modelo de Minicomputadoras. Varias computadoras que soportan diferentes usuarios cada una y provee acceso a recursos remotos.

Por lo menos un usuario por cada computadora ( CPU < Usuarios ).

Modelo de Estacin de Trabajo. Varias estaciones (Por lo general cientos), donde cada usuario cuenta con una estacin de trabajo (ET) y realiza en ella todo su trabajo. Requiere de un Sistema Operativo que soporte funciones de acceso y control remoto.

Un microprocesador por cada usuario ( CPU = Usuarios). Las estaciones de trabajo cuentan con Interfaces Grficas, CPU potentes y Memorias propias.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Modelo microprocesadores en Pooling. Trata de utilizar uno o ms microprocesadores dependiendo de las necesidades de los usuarios. Primero los procesadores completan su tarea y posteriormente regresan a esperar una nueva asignacin.

El nmero de microprocesadores normalmente es mayor a uno por usuario ( CPU > Usuarios ).

Sistema Operativo Distribuido


Extiende el concepto de administracin de recursos e interfaces con el usuario hacia computadoras de memoria compartida para formar un sistema Operativo Distribuido, el cual consiste en varias computadoras autnomas conectadas por una red de comunicaciones.
S.O + Administracin de Recursos Remotos + Entorno de Red

Caractersticas:
Para cada uno de los usuarios debe de ser similar al trabajo en el Sistema Centralizado. Se ejecuta en mltiples Computadoras. Tiene varias copias del mismo Sistema Operativo o de diferentes Sistemas Operativos que proveen los mismos servicios. Transparencia (El uso de mltiples procesadores y el acceso remoto debe de ser invisible)

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Complejidad y Aspectos que intervienen en el diseo de un Sistema Operativo Distribuido.


Conocimiento Global. Se trata de conocer y actualizar el estado global (global Knowledge) de todos los procesos y recursos del sistema. Caractersticas:
1. Se tiene soluciones mucho ms complejas. 2. No se tiene disponibilidad de una memoria global y un reloj global, no se pueden predecir

los retardos y mensajes.


3. Una sola computadora no puede colectar toda la informacin del sistema distribuido. 4. Un problema que se presenta es determinar tcnicas eficientes para establecer controles

amplios en un sistema descentralizado y donde una sola computadora no conoce el estado actual y completo del sistema global.
5. Otro problema significativo se presenta debido a la ausencia de un reloj global y no permite

tener formas de ordenar y controlar todos los eventos que ocurren en diferentes tiempos y en diferentes computadoras. Nomenclatura. En ese aspecto se utilizan nombres para referirse a los objetos (Computadoras, impresoras, servicios, archivos y usuarios). Por ejemplo: El servicio de FTP o el servicio de DNS.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Caractersticas:
1. En un servidor de nombres se mapea un nombre lgico a una direccin fsica por medio de

tablas.
2. En un Sistema Distribuido los directivos pueden ser replicados y almacenados en varias

lugares para reducir las posibilidades de fallas e incrementar la disponibilidad del servicio.
3. Se requiere ms capacidad de almacenamiento. 4. Requiere de sincronizacin para actualizar los directorios de cada localizacin. 5. Puede utilizarse particin de directorios en lugar de replicacin, pero es mucho ms

complejo. Escalabilidad. Los sistemas crecen con el tiempo y les puede afectar la poca disponibilidad y la degradacin del rendimiento cuando el crecimiento ocurre. Compatibilidad. Se refiere a la interoperabilidad entre los recursos de un sistema. Generalmente existen 3 niveles de compatibilidad aplicados a los sistemas. Nivel binario: Todos los procesadores ejecutan el mismo conjunto de instrucciones binarias, sin embargo los procesadores pueden diferir en rendimiento y su forma de entrada y salida. Ventajas:
1. Es ms fcil el desarrollo de sistemas. 2. No pueden incluirse arquitecturas diferentes de un fabricante o varios. 3. Es raramente soportado por sistemas grandes.

Nivel Ejecucin: Se presenta cuando el mismo cdigo fuente puede ser compilado y ejecutado correctamente en cualquier computadora del sistema. Nivel Protocolo:

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

hgfEs el menos receptivo de todos ya que se obtiene interoperabilidad con el simple requerimiento de los componentes de comunicacin de los sistemas, soportan un conjunto comn de protocolos por ejemplo las computadoras individuales pueden ejecutar diferentes Sistemas y sacrificar su operatibilidad. Sincronizacin de Procesos Es uno de los ms importantes a considerar dentro de los sistemas distribuidos. La sincronizacin es difcil por la falta de una memoria comn al no conocerse las caractersticas de los procesos que se ejecutan. Caractersticas:
1. Un Sistema Operativo Distribuido tiene que sincronizar los procesos que se estn ejecutando

en diferentes computadoras cuando estas tratan de accesar concurrentemente un recurso compartido, por ejemplo: un directorio.
2. El recurso compartido debe ser accesado por un proceso a la vez, a esto se le conoce como

mutua exclusin.
3. Cuando se tiene acceso concurrentemente a un recurso compartido por diversas peticiones no

coordinadas de usuarios, estas deben de seriabilizarse para asegurar la integridad del recurso.
4. Los procesos deben solicitar recursos locales o remotos y posteriormente liberados en

cualquier orden que puede ser no conocido.


5. Si la ausencia de asignacin de recursos de los procesos no se controla se puede presentar un

" Dead Lock " ( Candado muerto o recurso bloqueado ) que degrade al sistema.

Administracin de Recursos. Se refiere en hacer que los recursos locales y remotos de una manera efectiva y fcil. Esta localizacin de recursos debe ser transparente para el usuario. Los recursos deben estar disponibles de la siguiente manera:

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Migracin de datos: Los datos son trados al lugar del sistema donde son necesitados, pueden llegar a ser desde un archivo ( local o remoto ) o hasta el contenido de una memoria fsica. Caractersticas: 1. Si un proceso actualiza un conjunto de datos, la localizacin original debe de ser tambin actualizada. 2. Se utiliza normalmente sistemas de archivos distribuidos que son componentes que implementan un sistema comn de archivos disponibles para todas las computadoras autnomas del sistema. Su objetivo principal es proveer la misma capacidad funcional de acceso a los archivos sin importar su localizacin dentro de la red. A esto se le conoce como transparencia. 3. Otro de los elementos utilizados para la migracin de datos es la administracin de memoria compartida distribuida. Provee de un espacio de direccionamiento virtual que es compartido entre todas las computadoras del sistema distribuido. La mayor complejidad de implementar memoria compartida distribuida es el mantener la consistencia de los datos y reducir los retardos en el acceso de los mismos. Migracin de Clculos: Los clculos procesados son llevados hacia otra localizacin y puede ser eficiente bajo ciertas circunstancias, por ejemplo: Cuando se requiere informacin de un directorio remoto es ms eficiente enviar el mensaje solicitando la informacin necesaria y recibindola de regreso. Planeacin Distribuida: Los procesos son transferidos de una computadora a otra dentro del sistema distribuido, esto es que un proceso puede ser ejecutado en una computadora diferente de donde fue originado. Este proceso de relocalizacin puede ser deseable si la computadora donde se origino se encuentra sobrecargada o no posee los recursos necesarios. La planeacin distribuida es la responsable de todos los procesos distribuidos que se lleven a cabo entre computadoras sean efectuados con criterio y transparencia para obtener el mximo rendimiento. Seguridad La seguridad de un sistema es la responsable de la integridad del Sistema Operativo dentro del diseo de un sistema de seguridad se consideren dos aspectos importantes:

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Autentificacin: Es el proceso de garantizar que una entidad es quien debe ser. Autorizacin: Es el proceso de decidir que privilegios tiene una entidad y hacer que solo esos privilegios se encuentren disponibles.

Estructuracin La estructuracin de un sistema Operativo define como estn organizadas sus partes y que comnmente especifican el funcionamiento del mismo. En Sistemas Distribuidos Utilizan normalmente los siguientes mtodos tradicionales de estructuracin de un Sistema Operativo.

Ncleo Monoltico: Es el mtodo tradicional de estructurar Sistemas Operativos, esto se lleva a cabo a travs de un gran ncleo monoltico que contiene todas las funciones y servicios provistos por el Sistema Operativo. Existen casos entre los Sistemas Distribuidos donde el uso de un bloque monoltico grande no es de mucha utilidad para los servicios ofrecidos por el Sistema Operativo (Estaciones sin disco, estaciones con medios locales de almacenamiento, estaciones con procesadores matemticos especficos, etc.). Ncleo Colectivo: En esta estructura se tiene una coleccin de procesos que son ampliamente independientes unos de otros. Los servicios del Sistema Operativo ( Administracin de memoria distribuida, sistemas de archivos distribuidos, sincronizacin distribuida, procesos RPC, administracin de tiempos, etc.) son implementados como procesos independientes. El ncleo del Sistema Operativo ( Comnmente llamado Microkernel ) soporta la interaccin entre los procesos que proveen los servicios al Sistema Operativo, tambin provee los servicios tpicamente esenciales para cada computadora tal como la administracin de tareas. El microkernel se ejecuta en todas las computadoras del sistema, mientras que los otros procesos pueden o no correr segn se requiera. Sistema Orientado a Objetos: Estos sistemas son estructurados utilizando el concepto de objetos, donde cada uno de los servicios son implementados como un objeto del sistema y que en trminos de un ambiente de objeto, se le conoce como coleccin. Cada objeto encapsula una estructura de datos y define un conjunto de operaciones para ese objeto, de manera que cada uno de estos objetos corresponden a un tipo definido, por ejemplo: Objetos de procesos, directorios o archivos. Este modelo se puede cambiar con la estructura colectiva y las tcnicas de separacin de funciones y mecanismos.

Modelo de Construccin.
Cliente/Servidor

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Arquitectura Cliente/Servidor: Una arquitectura es un conjunto de reglas, definiciones, trminos y modelos que se emplean para producir un producto. La arquitectura Cliente/Servidor agrupa conjuntos de elementos que efectan procesos distribuidos y computo cooperativo.

Beneficios:
1. Mejor aprovechamiento de la potencia de cmputo (Reparte el trabajo). 2. Reduce el trfico en la Red. (Viajan requerimientos). 3. Opera bajo sistemas abiertos. 4. Permite el uso de interfaces grficas variadas y verstiles.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Segmentacin de Aplicaciones:

Qu es el Cliente? Conjunto de Software y Hardware que invoca los servicios de uno o varios servidores. Caractersticas:
1. El Cliente oculta al Servidor y la Red. 2. Detecta e intercepta peticiones de otras aplicaciones y puede redireccionarlas. 3. Dedicado a la cesin del usuario ( Inicia...Termina ). 4. El mtodo ms comn por el que se solicitan los servicios es a travs de RPC (Remote

Procedure Calls). Funciones Comunes del Cliente:


1. Mantener y procesar todo el dialogo con el usuario. 2. Manejo de pantallas. 3. Mens e interpretacin de comandos. 4. Entrada de datos y validacin.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

5. Procesamiento de ayudas. 6. Recuperacin de errores.

Qu es el Servidor? Conjunto de Hardware y Software que responde a los requerimientos de un cliente. Tipos Comunes de Servidores:
1. Servidor de Archivos (FTP, Novell). 2. Servidor de Bases de Datos (SQL, CBASE, ORACLE, INFORMIX). 3. Servidor de Comunicaciones 4. Servidor de Impresin. 5. Servidor de Terminal. 6. Servidor de Aplicaciones (Windows NT, Novell).

Funciones Comunes del Servidor:


1. Acceso, almacenamiento y organizacin de datos. 2. Actualizacin de datos almacenados. 3. Administracin de recursos compartidos. 4. Ejecucin de toda la lgica para procesar una transaccin. 5. Procesamiento comn de elementos del servidor (Datos, capacidad de CPU, almacenamiento

en disco, capacidad de impresin, manejo de memoria y comunicacin). Red de comunicacin. Es todo aquel conjunto de elementos basados en hardware y software que permite establecer un enlace entre los clientes y los servidores, se clasifican por su tamao LAN, MAN y WAN. Caractersticas de la comunicacin:
1. A travs de este medio, el cliente debe localizar e iniciar la comunicacin con el servidor. 2. No se utiliza la metodologa de comparticin de archivos, ya que todos los accesos a la

informacin se llevan a cabo a travs de peticiones por medio de comunicacin.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

3. Debido a que los programas de manejo y control de informacin ( Archivos y bases de datos

solo se envan y reciben los resultados de las operaciones (Trfico igual a Datos ledos o escritos).
4. Debido a la flexibilidad de establecer sesiones con mltiples servidores y manejo de

informacin en varias bases de datos (en sitios remotos es requerido el uso de estilos transaccionales y cooperativos). Estilo de Bases de Datos con arquitectura Cliente/Servidor.

Modelos o Tcnicas de Procesamiento y Protocolos comnmente utilizados.


Llamadas a procedimientos remotos (RPC). Interacciones SQL Cliente/Servidor. Memoria compartida. Paso de Mensajes. SPX/IPX NETBEUI (NETBIOS) NAME PIPES TCP/IP UDP SOCKETS

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Distribucin entre Cliente y Servidor.


Dentro de los procesos que son manejados en una arquitectura Cliente/Servidor, se tiene 3 elementos bsicos que deben de distribuirse entre el cliente y el servidor, estos elementos son:

El manejo de Datos. La aplicacin. La presentacin.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Nombres. Proteccin y Seguridad. Criptografa. Archivos distribuidos.

Almacenamiento de datos.
Dentro de los sistemas distribuidos, una de las aplicaciones ms importantes es la del manejo de datos e informacin que son utilizados en prcticamente todos los niveles de cualquier sistema o empresa. El sistema debe estar preparado para el conocimiento sobre como administrar y manejar la informacin y datos requeridos. Tambin debe de contemplar las funciones de seguridad y proteccin de los datos de manera que sean implementadas dentro del sistema, mtodos para proteger la integridad de la informacin en cualquiera de las fases de un sistema distribuido (procesos locales de un sistema distribuido, comunicacin y procesos remotos). Uno de los primeros factores que deben contemplarce en la forma de identificar, referenciar y accesar los recursos que estn disponibles de una poco compleja y fcil. Para hacer esta identificacin, el procedimiento ms utilizado es la asignacin de nombres o nomenclaturas a cada uno de los recursos disponibles del sistema.

Nombres.
El establecer comunicacin entre los objetos soportados dentro de un sistema distribuido requiere que se conozca una identidad (nombre) de los objetos que sern accesados. La comunicacin llega a ser efectiva si un nombre puede ser mapeado hacia su correspondiente ruta. Se requieren 3 aspectos para integrar un sistema de nomenclatura que permita el fcil acceso a los objetos o recursos de un sistema distribuido.

Conocer que objeto se requiere accesar (Nombre). Donde se encuentra ese objeto (Direccionamiento). Como obtener o llegar al objeto (Ruta).

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Para llegar a formar una estructura de nombres se utilizan bsicamente 3 aspectos: Estructura plana participando y con nombres descriptivos. Nombres estticos y dinmicos en el tiempo. Nmero de nombres individuales y de grupo. Dentro de un sistema de nombres se involucran varios elementos esenciales que tiene una estrecha relacin entre ellos, tal como se muestra en el siguiente diagrama. Elementos File services Colaboracin de servidores de archivos. User names

Seguridad (proteccin)

Servicio de transacciones. Servicio de directorios. Servicio de discos.

Control de Seguridad de acceso comunicaciones

Distribucin de nombres Algoritmos para llamado Reduccin compartido y de nombres llamado balanceado.

Localizacin de recursos

Deteccin de Dead Locks Sincronizacin de procesos.

Proteccin de recursos

Administracin de procesos Sistemas de nombres Opciones en procesos: local remoto migracin de procesos. Comunicacin inteprocesos y Puertos administracin de memoria Comunicacin interprocesos: Paso de mensajes o llamada de procesamientos,

Capacidades Autenticacin

Lista de accesos

Administracin primaria

Informacin Encriptacin de datos. del flujo

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

remotas o transacciones.

central

Direcciones Rutas Soporte de protocolos de transporte para comunicacin interprocesos Ncleo de seguridad Encriptacin de protocolo

Entre los elementos de un sistema distribuido se utiliza una organizacin jerrquica para ligar el acceso a esos elementos como se muestra en la siguiente figura:

Direccionamiento y Mapeo
En sistemas distribuidos el uso de una direccin puede ser tratado como un intermediario y una ruta de acceso.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Una direccin esta asociada con la localizacin fsica del nombre de los objetos, orientando principalmente hacia un proceso computacional el cual es utilizado para generar la ruta. Atributos Estructura Primitiva Nombre Particionada Descriptiva Esquema Mapeo (Ruteo) Fuente Hopley Hop Broad Cast Existe una relacin muy estrecha entre la aplicacin de un esquema de direccionamiento y su siguiente paso, que es el mapeo, el cual consiste en establecer referencias indirectas que nos permitan ir acercndonos hacia el elemento deseado. Funcin Centralizado Distribuido Tiempo Esttico Dinmico Tiempo Esttica Dinmica Nmero Individual Grupo

Una caracterstica de un sistema que utiliza direccionamiento y mapeo es el uso de identificadores nicos orientados a la computadora los cuales garantizan su induplicidad en espacio y tiempo para evitar conflictos al e migrar datos e informacin entre diferentes sistemas.

Bsqueda de Nombres.
Se considera la identificacin de la localizacin donde se encuentra el servicio o el elemento como parte de un esquema de bsqueda o traduccin de nombre (direccin) ya que es necesario que el sistema conozca todos los caminos disponibles (vas de acceso) entre los objetos y los servicios. Principalmente se consideran 2 aspectos:

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Encontrar una direccin en la red en donde se encuentre el servicio funcionando. Encontrar una ruta donde la solicitud del servicio encuentre la direccin donde se ubica. Una direccin puede ser identificada de 2 formas: Enviando mensajes a la red (Broadcast). Busca un servicio en forma general. Enviando directamente un mensaje a un servidor de nombres que devuelve la respuesta. Dentro de un sistema de manejo de nombres se tienen varios componentes necesarios que permiten hacer la funcionalidad de traduccin o interpretacin de direcciones fsicas, estos componentes son Server name, Agent, Cliente.

Todo sistema de nombres debe contener una estructura definida que garantice el acceso ms optimo hacia los elementos que integran el sistema distribuido. Estas estructuras comnmente son implementadas dentro de los servidores de nombres y sus tipos son: Jerrquico. Centralizado. Replicado. Descentralizado. Distribuida.

Proteccin y seguridad.
Objetivo La seguridad y proteccin en los sistemas distribuidos es implementado con el objetivo de proteger la informacin contra su acceso y uso no autorizado, modificacin o destruccin de datos almacenados o transmitidos por un sistema computacional.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Factores que intervienen en la aplicacin de esquemas de seguridad. Existen varios elementos que complican la aplicacin de formas o esquemas para dar seguridad dentro de un sistema. Estos elementos estn presentes en funcin del tipo de seguridad y los objetivos que queramos proteger. Factores: Comparticin de datos y objetos, as como todas las posibilidades de acceso remoto. Valor incremental de la informacin que se transmite. Desarrollo de nuevas tecnologas que facilitan la posibilidad de accesos (o ataques) en un sistema distribuido. El intruso puede llevar a cabo alguna de las siguientes violaciones:

Liberacin no autorizada de informacin (tomar ventaja). Modificacin no autorizada de informacin (alterar informacin). Denegar sin autorizacin en servicios.

Aplicacin de redes dinmicas de los niveles de administracin de dominios. Cambios constantes de los niveles de administracin de dominios. Diferentes protocolos de comunicacin. Incremento de los alcances con ambiente de crecimiento rpido (mala planeacin). Formas de acceso no permitido.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Existen varias formas de accesar la informacin que se transfiere por un sistema de red, cuando esto no es permitido se deben contemplar esquemas de seguridad y proteccin que abarquen aquellos sitios donde esta informacin pueda estar disponible para un intruso. Cuando los elementos de red son abiertos o pblicos no existen muchos medios para proteger estos datos ya que estn disponibles en todo momento de forma publica. Existen 2 tipos de ataques que pueden hacerse sobre nuestra informacin: Ataques pasivos. Ataques activos

Ataques Pasivos y Ataques Activos


Ataques Pasivos El intruso establece patrones para observar los mensajes de las aplicaciones sin interferir con ellos, se tienen dos categoras: Liberacin del contenido del mensaje: El intruso libera o hace pblico el contenido de los mensajes. Anlisis de trfico: El intruso observa cuando y donde se realiza el flujo de informacin con el objetivo de identificar fuentes y localizaciones. Ataques Activos

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

En este tipo de ataques se realizan una variedad de procesos en el paso de los mensajes que puede afectar directa o indirectamente. Se tienen 4 categoras. Modificacin del mensaje: Consiste en realizar modificaciones directamente sobre el contenido del mensaje (borrar, insertar, modificar). Denegar entrega de mensaje: Consiste en no permitir que el mensaje sea entregado a su destino a travs de bloqueos o retenciones. Retardar entrega de mensajes: Consiste en hacer que un mensaje no llegue a su origen en el tiempo normal de manera deliberada. Enmascarar: Consiste en utilizar una falsa identidad para que le sea entregado un determinado mensaje. Metas al aplicar esquemas de seguridad. La finalidad que se tiene al conocer el tipo de ataque que el sistema puede tener se enfoca a 2 aspectos bsicos que son los de prevenir y detectar estas acciones. En los ataques activos el objetivo es prevenir la realizacin del mismo a travs de formas y medios que no le permitan al intruso obtener la informacin que va a modificar. Los ataques pasivos son los ms difciles de identificar y la meta principal es detectar el momento y lugar que estos ocurran. Proteccin vs Seguridad La proteccin y seguridad son elementos importantes dentro de la operacin de un sistema distribuido, ya que debemos buscar que cualquier tipo de ataque no afecte la integridad de los recursos y los datos que son manipulados. Un sistema es seguro si cuenta con polticas y mecanismos que proporcionen proteccin, de esta manera podemos establecer que para proteger un sistema dependemos de la seguridad del mismo. Proteccin: Se refiere a todos los mecanismos que deben ser implementados para proporcionar seguridad en los sistemas, pueden ser operaciones y procesos que permitan restringir accesos dentro de los sistemas. Por ejemplo las rejas para proteger una casa.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Seguridad: Se refiere a todos las polticas que son implementadas adicionalmente a los mecanismos para incrementar las posibilidades de integridad de los sistemas. Por ejemplo cambiar el password de un sistema peridicamente.

Seguridad con Firewall


Los Firewalls son un tipo de seguridad muy efectiva en redes. Intenta prevenir los ataques de usuarios externos a la red interna. Tiene mltiples propsitos: Restringir la entrada a usuarios a puntos cuidadosamente controlados. Prevenir los ataques . Restringir los permisos de los usuarios a puntos cuidadosamente controlados. Un Firewall es a menudo instalado en el punto donde la red interna se conecta con Internet. Todo trfico externo de Internet hacia la red interna pasa a travs del Firewall, asi puede determinar si dicho trfico es aceptable, de acuerdo a sus polticas de seguridad. Lgicamente un Firewall es un separador, un analizador, un limitador. La implementacin fsica varia de acuerdo al lugar. A menudo, un Firewall es un conjunto de componentes de hardware - un router, un host, una combinacin de routers, computadoras y redes con software apropiado. Rara vez es un simple objeto fsico. Usualmente esta compuesto por mltiples partes y alguna de esas partes puede realizar otras tareas. La conexin de Internet tambin forma parte del Firewall. Un Firewall es vulnerable, l no protege de la gente que est dentro de la red interna. El Firewall trabaja mejor si se complementa con una defensa interna. Un Firewall es la forma ms efectiva de conectar una red a Internet y proteger su red. Los Firewalls tambin tienen otros usos. Por ejemplo, se pueden usar para dividir partes de un sitio que tienen distintas necesidades de seguridad. Las dos principales aproximaciones usadas para construir Firewalls hoy son: Filtrado de paquetes. Servicio Proxy El sistema de filtrado de paquetes rutea paquetes entre host internos y externos, pero de manera selectiva. Permite bloquear cierto tipo de paquetes de acuerdo con la poltica de seguridad de la red. El tipo de ruteo usado para filtrar paquetes en un Firewall es conocido como "screening router". Se puede selectivamente rutear paquetes desde o hacia su sitio:

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Bloquear todas las conexiones que entran desde sistemas externos, excepto las conexiones SMTP (solo recibir mails). Bloquear todas las conexiones que provienen de un determinado lugar que se considera peligroso. Permitir servicio de Mail y FTP, pero bloqueando servicios peligrosos como TFTP, RPC, servicios "r" (rlogin, rsh, etc), etc.

Para entender como se filtra un paquete, se necesita conocer la diferencia entre ruteo ordinario y "screening router". Un ruteo ordinario simplemente mira la direccin destino de cada paquete y elige el mejor camino que l conoce hacia la direccin destino. La decisin sobre como atender el paquete se basa solamente en el destino del paquete. En "screening router", mira el paquete ms detalladamente. Adems de determinar si el paquete puede ser ruteado o no a la direccin destino, determina si debe o no debe ser ruteado de acuerdo a la poltica de seguridad. La comunicacin entre la red interna y externa tiene una enorme responsabilidad. Realizar el ruteo y la decisin de rutear es la nica proteccin al sistema. Si la seguridad falla, la red interna est expuesta. Un "screening router" puede permitir o denegar un servicio, pero no puede proteger operaciones individuales dentro del servicio. Casi todos los dispositivos actuales de filtro de paquetes (enrutadores de seleccin o compuertas de filtro de paquetes) operan de la siguiente forma: El criterio de filtro de paquete debe almacenarse para los puertos del dispositivo para filtro de paquetes. El criterio de filtro de paquetes se conoce como reglas de filtro de paquetes. Cuando un paquete llega al puerto, los encabezados de los paquetes se analizan. La mayora de los filtros los campos slo en los encabezados IP, TCP o UDP. Las reglas del filtro de paquete se almacenan en un orden especfico. Cada regla se aplica al paquete en el mismo orden en que la regla del filtro de paquetes se almacen. Si una regla bloquea la transmisin o recepcin del paquete, el paquete no se acepta. Si una regla permite la transmisin o recepcin de un paquete, el paquete sigue su camino. Si un paquete no satisface ninguna regla, es bloqueado. Es decir aquello que no est expresamente permitido, se prohibe, deber observar que es importante colocar las reglas en orden correcto. Un error comn al configurar las reglas del filtro de paquetes es hacerlo en desorden. Si dichas reglas se colocan en un orden equivocado, podra terminar denegando servicios vlidos, mientras que permitira los servicios que deseaba denegar.

Seguridad con PROXY


Definicin

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Proxy es un sistema intermediario entre hosts internos de una red y los hosts de Internet de forma tal que reciba las requisiciones de unos y se las pase a los otros previa verificacin de accesos y privilegios. Este sistema puede correr en hosts "dual-homed" o hosts "bastion" los cuales sern llamados Servidores Proxy. Los sistemas Proxy son efectivos solo si se utilizan junto a mtodos de restriccin de trfico IP entre clientes y servidores reales. De este modo, un cliente no podr "bypasear" el servidor Proxy para comunicarse con un servidor real utilizando este protocolo. Funcionamiento El programa cliente del usuario se comunica con el servidor Proxy enviando pedido de conexin con un servidor real. El servidor Proxy evala esta requisicin y decide si se permitir la conexin. Si el servidor Proxy permite la conexin, enva al servidor real la solicitud recibida desde el cliente. De este modo, un servidor Proxy se ve como "Servidor" cuando acepta pedidos de clientes y como "cliente" cuando enva solicitudes a un servidor real. Una vez que establecida la comunicacin entre un cliente y un servidor real, el servidor Proxy acta como un retransmisor pasando comandos y respuestas de un lado a otro. Un punto importante a tener en cuenta en este tipo de conexin es que es totalmente transparente. Un usuario nunca se entera de que existe un "intermediario" en la conexin que ha establecido. La comunicacin entre el programa cliente y el servidor Proxy puede realizarse de dos formas distintas: Custom Client Software: El cliente debe saber como opera el servidor Proxy, como contactarlo, como pasar la informacin al servidor real, etc. Se trata de un software cliente standard que ha sido modificado para que cumpla ciertos requerimientos. Custom User Procedures: El usuario utiliza un cliente standard para conectarse con un servidor Proxy y usa diferentes procedimientos (comandos del servidor Proxy) para pasar informacin acerca del servidor real al cual quiere conectarse. El servidor Proxy realiza la conexin con el servidor real Tipos de servidores Proxy Servidor Proxy de Aplicacin: Es un servidor que conoce sobre una aplicacin en particular y provee servicios proxy para ella. Entiende e interpreta comandos de un protocolo en particular. Con este tipo de servidores es necesario contar con uno de ellos para cada servicio. Recibe tambin el nombre de servidor Dedicado.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Servidor Proxy de Circuito: Crea un circuito virtual entre el cliente y el servidor real sin interpretar el protocolo de la aplicacin. Son llamados Proxies Genricos. Ventajas Permite a los usuarios acceder a los servicios de Internet ocultando totalmente la red interna. Permite un buen servicio de logs a nivel de cada aplicacin. Debido a que todo el trfico pasa a travs del servidor Proxy se puede registrar gran cantidad de informacin con fines de auditoria y seguridad. El servidor Proxy de Circuito provee soporte para un conjunto grande de protocolos. Desventajas A menudo se requiere la modificacin del software cliente. Hay software que esta disponible solo para ciertas plataformas: Por Ej: GATEWAY es un package Proxy para FTP y TELNET de SUN que corre solo sobre SUN. La disponibilidad de estos tipos de paquetes a menudo no es inmediata. En el caso de servidores Proxy de Aplicacin se requiere un servidor Proxy para cada servicio. Algunos servicios no son viables para trabajar con servidores Proxy (Ej: talk). El uso de servidores Proxy introduce algn retardo en las comunicaciones. Los servidores Proxy de circuitos no brindan control especifico sobre las aplicaciones.

Criptografa.
Es una tcnica que provee un incremento en la proteccin de los sistemas en eventos o lugares donde se maneja informacin no autorizada y que puede estar disponible para los impulsos. Permite que una pieza de informacin sea convertida a una forma encriptada antes de que sea almacenada o transmitida por un canal de comunicacin.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Encriptacin
Una operacin primitiva (a bajo nivel) empleado por la criptografa y que se efecta sobre datos para convertirlos a una representacin que no tenga significado para cualquier otra entidad, nicamente para el receptor designado. Modelo de criptografa La encriptacin est asociada con la transformacin de un mensaje inteligible (M) a una forma no inteligible (C) con la ayuda de una clave secreta (Ke) antes de que sea colocada en un medio inseguro. La encriptacin se define como una funcin matemtica (algoritmo) de la siguiente forma: C = E (M,Ke) = EKe (M). donde E puede ser una funcin computacional. Un algoritmo de encriptacin debe tener la propiedad de que el dato original pueda ser recuperado de su forma encriptada si se conoce el valor de su llave. M = D (C,Kd) = DKd (C). donde D= Funcin decriptadora.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

A la entrada de un algoritmo de encriptacin (Cipher) es llamado mensaje, cleartext o plaintext o criptograma.

La proteccin de un sistema de encriptacin es medida por el grado de dificultad que presente para encontrar la clave utilizada. Entre ms complejo sea el mtodo de encriptado utilizado, le es ms difcil a otras personas descifrar el mensaje. Los ataques de un intruso dentro de un sistema protegido por criptografa se clasifican en: Cipertext .- Only Attack (Slo cosas generales). Know .- Plaintext Attack (Conoce algo de Plaintext y su correspondiente Ciphertext). Chose .- Plaintext attack (Puede ver Ciphertext y Plaintext).

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Conozcamos algunos de los algoritmos existentes de Encriptacin.


La criptografa (que, etimolgicamente, procede de la raz griega kruptoj, kripts, "oculto", y de grafa, y significa "escritura oculta") se puede definir como la disciplina que estudia los principios, mtodos y medios de ocultar la informacin contenida en un mensaje. Es practicada por los criptgrafos. Es decir, se trata de permitir que dos entidades, ya sean usuarios o aplicaciones, puedan enviarse mensajes por un canal que puede ser intervenido por una tercera entidad, de modo que slo los destinatarios autorizados puedan leer los mensajes. Pero la criptografa no es en s seguridad; simplemente es la herramienta utilizada por mecanismos ms complejos para proporcionar no slo confidencialidad, sino tambin otros servicios de seguridad. Tipos De Criptografa DES (Data Encryption Standard) Triple-Des (3des) IDEA (International Data Encryption Algorithm) Rc-2 Y Rc-4

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Skipjack AES (Advanced Encryption Standard) CAST, Rc5 De Ron Rivest O Safer-Sk. Algoritmo RSA (Rivest-Shamir-Adleman) Algoritmo ElGamal PGP (Pretty Good Privacy) Otros Implementacin De PGP En origen, el mensaje o fichero que queremos proteger va pasando por diferentes bloques que lo van transformando:
1. Compresin, utilizando el algoritmo pkzip. 2. Firma digital. Se crea una firma digital del mensaje, utilizando la funcin de hash MD5.

Dicha firma es cifrada con la clave privada del remitente usando el algoritmo RSA y aadida al mensaje. El usuario puede elegir la longitud de la clave asimtrica, y por tanto su grado de seguridad. Ahora bien, cuanto ms larga sea la clave, ms lento ser el proceso.
3. Cifrado. El cifrado se hace usando IDEA (criptografa de clave simtrica). La clave simtrica

es generada aleatoriamente y transmitida al destinatario cifrada con su clave pblica (algoritmo RSA de nuevo).
4. Compatibilizacin con el protocolo de transmisin de correo electrnico. 5. Segmentacin.

En la recepcin se realiza el proceso inverso, con lo que se obtiene el mensaje original, asegurando los requerimientos buscados.

Algoritmos de clave asimtrica


Algoritmo Rivest-Shamir-Adleman (RSA) El algoritmo RSA se fundamenta en el hecho de que la factorizacin de nmeros primos es un problema de resolucin computacionalmente difcil.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Algoritmo El algoritmo RSA est descrito en infinidad de sitios y es extremadamente simple: Primero es necesario calcular las claves:
1. Encontrar dos nmeros primos grandes (de 100 cifras o ms), p y q. 2. Definir n (conocido como mdulo) como: n = pq 3. Definir z como: z = (p-1)(q-1) 4. Encontrar un nmero primo aleatorio e menor que el mdulo y tal que e y z sean primos

entre s.
5. Determinar un valor d tal que se cumpla que (ed - 1) es divisible entre z (d existe y es nico). 6. El cifrado del mensaje M se obtendr segn la siguiente operacin: C = Me (mod n)

Y el descifrado mediante la siguiente: M = Cd (mod n) Por tanto, la clave pblica estar constituida por el par (n,e), mientras que la clave privada la constituirn (n,d). Ejemplo:

El principal problema de manejar criptografa en un sistema, consiste en distribuir la clave entre todos los elementos del sistema, de manera que cada elemento autorizado obtenga el valor de la llave para descifrar el mensaje. Esta distribucin puede hacerse a travs de tres maneras: Centralized Key Distribution. Fully Distribuid Key Distribution. Hierarchical Key Distribution.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

que el sistema ofrece a los clientes, establece todas aquellas directivas sobre donde encontrar un archivo.

Servicio de Directorios.- Es un proceso que se ejecuta en alguna mquina y ayuda a implantar el servicio de archivos de manera que podamos establecer ligas entre uno o ms grupos de archivos (directorios). Un sistema puede tener uno o varios servidores de archivos que son transparentes para los clientes ya que no debe de conocer su posicin.

Diseo de un Sistema de Archivos


Los sistemas de archivos distribuidos estn compuestos de dos elementos importantes, como lo son el servicio de archivos y el de directorios (mencionados con anterioridad). Decamos que el primero se encarga de las operaciones, en los archivos individuales, como la escritura, lectura y adicin, mientras que el segundo se encarga de crear y administrar directorios, adems de aadir y eliminar archivos en los directorios.

Interface De Un Servicio De Archivos


La Interface de un Servicio de Archivos proporciona toda la informacin necesaria sobre cada archivo individual como pueden ser sus atributos. La funcin ms importante de un servicio de archivos corresponde a su mantenimiento, ya que este servicio se encarga de todas las operaciones disponibles de lectura y escritura como pueden ser create, read, write, delete. Los usuarios de archivos se pueden dividir en dos tipos: Modelo de Carga y Descarga.- ste slo proporciona dos operaciones principales que son la lectura y escritura del archivo. La operacin consiste en transferir todo un archivo hacia el cliente y todos los movimientos de operacin sobre el archivo, lo realiza el cliente, cuando ha dejado de utilizar el archivo, ste se es regresado hacia el servidor en forma completa. ( con todos los cambios realizados actualmente).

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Modelo de acceso remoto.- Este tipo de servicios proporciona un gran nmero de operaciones para abrir y cerrar archivos leer y escribir partes de archivos, moverse a travs de un archivo, as como examinar y modificar los atributos de uno o varios archivos.

Archivos Distribuidos.
Un Sistema de Archivos Distribuido, es un administrador de recursos, y que es parte de un Sistema Operativo distribuido, puede ser compartido por todas las computadoras autnomas dentro del sistema. El poder administrar sistemas de archivos remotos proporciona una ventaja muy grande a los Sistemas Operativos ampliando su capacidad de administracin de recursos. Se tienen varios objetivos en un sistemas de este tipo: Diversidad de aplicaciones. Semntica del sistema de archivos (fase, simple, comprensible, pocos comandos). Cumple con requerimientos de diferentes usuarios.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Nomenclatura consistente (el mismo nombre en cada sitio). Transparencia de localizacin (mover un archivo sin cambiar su nombre y procesos involucrados). Acceso transparente (acceso remoto igual a acceso local). Consistencia de datos (garantizar integridad). Consistencia de autentificacin (reconocer identidad y derechos de usuarios y procesos). Proteccin de informacin (proteccin contra accesos no autorizados). Mobilidad de usuarios (acceso desde cualquier parte). Rendimiento (mismo rendimiento que en sistemas convencionales). Disponibilidad (baja aceptacin de fallas). Recuperacin (Recuperacin de procesos y servicios). Escalabilidad (disponibilidad para crecer). Adaptacin a diferentes medios de almacenamiento (disponibilidad para adaptarse a diferentes sistemas de almacenamiento en software y hardware).

Servicios de un Sistema de Archivos


Los sistemas de archivos son considerados como uno de los componentes mas importantes de cualquier Sistema Distribuido. Debe tener conocimiento de cada uno de los sitios disponibles de informacin, de manera que los servicios sean transparentes para cualquier usuario. En Sistemas Distribuidos se utilizan dos tipos de servicios: Servicio de Archivos.- Es una especificacin sobre el tipo de servicios de archivos

. .

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Procesamiento de Transaccion en Sistemas Distribuidos. Teora de Transacciones Anidadas.

Procesamiento de transacciones.
Motivos del uso de transacciones. Los sistemas distribuidos son potencialmente muy fiables debido a la posibilidad de proveer redundancia y autonoma de recursos en diferentes nodos, esto permite detectar y localizar fallas, sin embargo comnmente tenemos varios aspectos que representan problemas para la integridad de los recursos y que a su vez motivan el uso de transacciones:
1. Dificultad para mantener consistencia en los datos. 2. Una misma va de comunicacin no siempre puede ser utilizada para proveer interaccin

entre 2 procesos.
3. Requerimientos de procesamiento en paralelo. 4. Manejo interactivo de uno o ms usuarios

Definicin de transacciones. Las transacciones fueron originalmente desarrolladas para ser utilizadas dentro de los sistemas de base de datos, donde se usaba para auxiliar en el mantenimiento de los datos de las aplicaciones y que dependan de la consistencia de la informacin almacenada. Las transacciones son un mecanismo que ayuda a simplificar la construccin de sistemas confiables a travs de procesos que proveen soporte uniforme para invocar y sincronizar operaciones como:

Operaciones de comparticin de datos. Aseguramiento de la seriabilidad de las transacciones con otras. Atomicidad en su comportamiento. Recuperacin de fallas provocadas en red y nodos.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

El trmino transaccin describe una secuencia de operaciones con uno o ms recursos (por ejemplo una base de datos) que transforman su estado actual en un nuevo estado de consistencia.

El manejo de transacciones fue desarrollado en el campo de las operaciones financieras donde se tena 3 reglas bsicas: Consistencia: Obedecer ciertas reglas. Atomicidad: Debe ocurrir completo o abortar. Durabilidad: Una vez iniciada una transaccin y terminada completamente no puede ser abortada. Dentro del rea de los sistemas computacionales el concepto de transacciones fue inicialmente utilizado para definir la consistencia entre mltiples usuarios de una base de datos.

Teora del procesamiento de transacciones.


Consiste en una serie de modificaciones (transacciones) aun determinado recurso del sistema (por ejemplo una base de datos) y en donde se define un punto de inicio (Begin Tran) y un punto de terminacin que define un bloque entre el conjunto de operaciones que son realizadas. Dentro de este proceso en bloque los dems usuarios no pueden modificar nada hasta que no se presente un estado estable de los datos, esto ocasiona inconsistencia temporal y conflictos. Para evitar lo anterior se implementan dos maneras diferentes:

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Ejecutar transacciones serializadas. Es un sistema que permite el procesamiento de transacciones en forma secuencial o serializado y consiste en asignarle una secuencia a cada transaccin, este proceso reduce el rendimiento del sistema.

Ejecutar transacciones calendarizadas. Es un sistema que permite el proceso de transacciones asignndole tiempos de procesamiento el cual permite incrementar el rendimiento del sistema ya que se ejecuta un mximo de proceso en forma concurrente y no a travs de una serie.

Propiedades de las transacciones. Atomicidad de fallas. Consiste en efectuar todas las transacciones, pero en caso de falla no se realiza ninguna. Permanencia. Consiste en que una vez completada una transaccin satisfactoriamente los cambios ya no pueden perderse. Seriabilidad. Consiste en asegurarse que los cambios siguen un orden adecuado. Aborto de transacciones propio para cada transaccin. Es la capacidad que se tiene para abortar el proceso transaccional en cualquier punto, el resultado de esta operacin no puede ser revelado para otras transacciones.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Punto de inicio y terminacin. Consiste en especificar un bloque inicial y un punto que termina el fin de ese bloque.

Ejecutar transacciones anidadas. Consiste en tener transacciones que dependen de otras, estas transacciones estn incluidas dentro de otra de un nivel superior y se les conoce como: SubTransacciones. La transaccin de nivel superior puede producir hijos (Subtransacciones) que hagan ms fcil la

programacin del sistema y mejorando el desempeo. Instrucciones para el uso de transacciones. La programacin con uso transacciones requiere de instrucciones especiales, las cuales deben ser proporcionadas por el sistema operativo, por el compilador del lenguaje o por el manejador de la base de datos. Algunos ejemplos son: BEGIN_TRANSACTION END_TRANSACTION ABORT_TRANSACTION READ WRITE La cantidad exacta de instrucciones disponibles para manejar transacciones depende del tipo de objetos y operaciones que deban ser procesadas. Procesamiento de transacciones.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

La estructura de una transaccin usualmente se le da el nombre de modelo de la transaccin, estas pueden ser planas (simples) o anidadas. Un aspecto muy importante en el manejo de transacciones es el mantener y aplicar algoritmos de control sobre los datos o recursos; para ese control tambin se utilizan protocolos que proporcionan confiabilidad como los siguientes:

Atomicidad. Protocolos de recuperacin total. Protocolos de compromiso global.

El control de las transacciones tambin requiere de controlar la concurrencia del acceso y uso hacia el recurso que se esta manipulando, ese control de concurrencia tiene 2 objetivos:
1. Como sincronizar la ejecucin concurrente de transacciones. 2. Consistencia intratransaccin (aislamiento).

Para llevar a cabo el control de concurrencia dentro de un proceso de transacciones se manejan 2 modos: Ejecucin centralizada de transacciones.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Ejecucin distribuida de transacciones.

Mtodos de implantacin de transacciones.


Espacio de trabajo privado. Consiste en realizar copias de los bloques que sern utilizados dentro de una transaccin de manera que se trabaje con estas copias para realizar todas las modificaciones necesarias. Todo el espacio de trabajo con la informacin que ser utilizada es contenida dentro de estas copias denominado espacio de trabajo privado. Los dems usuarios trabajarn con la copia original de los bloques pero no podrn obtener segunda copia de los mismos.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Bitcora de escritura anticipada. Este mtodo consiste en realizar una lista con todas las transacciones que van siendo ejecutadas hacia un bloque o espacio de trabajo que sea estable, a esta lista se le conoce como lista de intenciones. Las transacciones sern actualizadas con la informacin una vez que se ha determinado el fin de la transaccin.

Gobierno del Estado de Mxico Secretara de Educacin Subsecretara de Educacin Media Superior y Superior Tecnolgico de Estudios Superiores de Jocotitln

MANUAL SISTEMAS DISTRIBUIDOS Por: Ing. Jorge Casio Gonzalez

Distributed Operating Systems The Logical Design A. Goscinski Addison Wesley. U.S.A 1995 Distrbuted Systems Sape Mullender ACM Press. U.S.A. 1996 Distribuided Computing Environments Daniel Ceruti- Donna Pierson Mc Graw Hill. U.S.A. 1995 Advanced concepts un operating systems Mukesh Singhal, Nirayan G. Shivaratri Mc Graw Hill. U.S.A. 1997

También podría gustarte