Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

SISTEMAS DE ARCHIVOS DISTRIBUIDOS

No description
by

Jonathan Becs

on 10 December 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of SISTEMAS DE ARCHIVOS DISTRIBUIDOS

SISTEMAS DE ARCHIVOS DISTRIBUIDOS
Sistemas de Archivos Distribuidos
Los
sistemas de archivos distribuidos
permiten que multiples proceos compartan datos durante largos periodos en forma segura y confiable.

Han sido utilizados como la capa basica de aplicaciones y sistemas distribuidos.

Arquitectura
Arquitecturas Cliente Servidor
Consistencia y
Replicación
El almacenamiento en la memoria caché y la replicación desempeña un rol muy importante en sistemas de archivos distribuidos, especialmente cuando operan en redes de área amplia

Seguridad
En una arquitectura cliente-servidor, los servidores manejen la auntenticación y el control de acceso(NFS).
Servicio de autenticación aparte, mientras que los servidores se encargan de la autorización
Administración centralizada de los usuarios.
Solution
El sistema de archivo de red (NFS) es apliamente utilizada en los sistemas basados en unix.
La idea basica detrás del NFS es que cada servidor de archivos proporcione una visión estandarizada de sus sistema de archivo local.
El NFS cuenta con un protocolo de comunicación que permite a los clientes acceder a archivos guardados en un servidor.
Asignación de Nombres
Asignación de nombres en NFS
Proporciona a los cliientes un acceso completamente transparente a un sistema de archivo remoto mantenido por un servidor.
El NFS permite que los clientes monten sólo ua parte de un sistema de archivo. El servidor exporta un directorio cuando pone a disposicion de sus clientes a éste y a sus entradas
Los usuarios no comparten espacios de nombre.
Arquitecturas Cliente Servidor
El modelo de sistema de archivo ofrecido por el NFS casi es el mismo que el ofrecido por sistemas basados en unix.
A los archivos se les asigna un nombre, pero se accede a ellos por medio de un manejador de archivo.

Para acceder a un cliente, primero se busca su nombre en un servicio de asignación de nombres y se obtiene el manejador de archivos asociado.

La figurra muestra las operaciones generales con archivos soportadas por las versiones 3 y 4 de NFS, respectivamente.
Arquitectura
Sistemas de archivo distribuido basados en Cluster
Si consideramos que los grupos de servidores a menudo se utilizan en aplicaciones en paralelo, no sorprende que sus sistemas de archivo asociados se ajusten como corresponde.
Una tecnica muy conocida es desplegar tecnicas de distribucion de archivos.
Los casos en que se debe organizar un sistema de archivos distribuidos para grandes centros de datos, es aun mas interesante, tales como los utilizados por compañías como google. Google desarrollo su propio
SISTEMA DE ARCHIVO GOOGLE (GFS)
. Las actualizaciones de los archivos se realizan anexando datos en lugar de sobreescribir algunas partes de un archivo. Junto con el hecho de que las fallas de servidor son la norma en lugar de la excepción, llevaron a la construccioón de grupos de servidorestal como se muestra en la figura.
Arquitectura
Arquitecturas Simétricas
Todas las propuestas actuas utilizan un sistema basado en DHT de distribucion de datos, combinado con un mecanismo de busqueda basado en una clave.
Una importante diferencia es decidir si construyen un sistema de archivos sobre una capa de almacenamiento distribuido, o si archivos completos deben guardarse en los nodos participantes.
Un ejemplo de primer tipo de sistema de archivo es
IVY
, un sistema de archivo distribuido con un sistema basado en cuerdas DHT.


Procesos
El aspecto mas interesante con respecto a procesos de sistemas de archivos es si deberan o no ser sin estado.

El protocolo NFS no requería que los servidores mantuvieran cualquier estado de cliente.

La ventaja principal del metodo sin estado es la simplicidad.
El metodo sin estado en el protocolo NFS no siempre se puede seguir a cabalidad en implementaciones prácticas.
Comunicación
RPC EN NFS
En NFS toda la comunicación entre un cliente y el servidor ocurre a lo largo de un protocolo RPC de computación de red abierta(ONC RPC).
El ONC RPC es similar a otros sistemas RPC. Cada operación es NFS puede ser implementada como una llamada a un procedimiento remoto unica realizada a un servidor de archivos.

El subsistema RPC2
El RPC2 es un paquete que ogrece RPC confiables encima del protocolo UDP.
Cada vez que un procedimiento remoto es invocado, el codigo de cliente RPC2 inicia un nuevo hilo que envia una solicitud de invocación al servidor y posteriormente se bloquea hasta que recibe una respuesta. Un aspecto interesante del RPC2 es su soporte de efectos colaterales.
RPC paralelas se implementan por medio del sistema multiRPC.
El multiRPC se implementa ejecutando multiples RPC puestas en paralelo.
Comunicación orientada a archivos en PLAN9
El plan9 no es tanto un sistema de archivo distribuido, sino mas bien un sistema distribuido basado en archivos.
En plan9, por ejemplo, una conexion TPC individual esta representada por un subdirectorio compuesto por los archivos mostrados en la figura.
Almacenamiento en la memoria caché del lado del cliente
En NFS ( Network File System - Sistema de archivos de red)
Cada cliente puede tener un caché de memoria que contenga datos previamente leídos del servidor. Además, también puede haber un caché de disco agregado como extensión de la memoria caché, utilizando parámetros de consistencia


Un servidor puede delegar algunos de sus derechos a un cliente cuando se abre un archivo y el servidor debe ser capaz de recordar la delegación o sea hacer una devolución de llamada al cliente.
En CODA
Tiene dos razones: Primero lograr escalabilidad y segundo le proporciona un alto grado de tolerancia a fallas.Cuando se abre un archivo para lectura o escritura, una copia completa se transfiere al cliente, donde posteriormente se guarda en la memoria caché



Replicación del lado
del Servidor
Es poco común la replicación, solo se aplica cuando la disponibilidad está en riesgo
Otro problema que trae la replicación es el bajo desempeño (alto grado de replicación y baja proporción de lectura y escritura)
Generalmente se replican para tolerancia a fallos.
Servidor en Coda
Su unidad de replicación es un conjunto de archivos llamado Volumen, los servidores Coda que guardan una copia de un volumen se les conoce como Grupo de almacenamiento de Volumen (VSG) y un grupo de almacenamiento de volumen accesible (AVSG) consta de aquellos servidores presentes en el VSG.

Replicación en sistemas de archivos punto a punto
No Estructurados
L a búsqueda de datos se reduce a buscarlos en la red
Estructurados
Un método aplicado es simplemente replicar la ruta que una búsqueda siguió desde su origen hasta su destino, pero debemos controlar la carga en los nodos.
Replicación de archivos en sistemas de malla (Grid)
Muchos de sus datos son de solo lectura, producidos por sensores; por consiguiente la replicación de datos es aplicada en abundancia.
El tamaño de los conjuntos de datos en ocasiones es enorme y debemos tratar de evitar que los proveedores de los datos se sobrecarguen debido a la gran cantidad de datos que deben transferir en la red.
Tolerancia a Fallas
Manejo de fallas bizantinas

La mayoría de sistemas no consideran a las fallas bizantinas, la principal razón son las fuertes suposiciones que se deben hacer con respecto a la ejecución. En modos prácticos las suposición no es realista.
¿Compartir un archivo, taréa difícil?
Proporcionar a cada cliente un espacio de nombre estandarizado en parte.
La resolución de nombre en NFSv3 es estrictamente iterativa.
NFSv4 permite busquedas de puntos de montajes entrecruzados en un servidor.
Manejador de Archivo
Referencia un archivo localizado dentro de un sistema de archivo.
Es independiente del nombre del archivo al que se refiere.
Completamente opaco.
NFS 32 bytes, 64 bytes, 128 bytes.
Identificador para un archivo con respecto a un sistema de archivo.
Obviar el nombre del archivo.
No reutilizar un manejador después de borrar un archivo.
Protocolo de montaje por separado.
Operación
putrootfh.
Automontaje
¿Compartir taréa difícil?
Proporcionar a cada usuario un espacio de nombre local parcialmente estandarizado, y luego sistemas de archivos remotos de igual modo para cada usuario.
Montar de forma transparente otro directorio de inicio de usuario conforme a la demanda.
Automontador
se encarga del montaje conforme a la demanda de un archivo remoto.
A continuacion consideraremos un automontador simple para NFS.
Permitir que el automontador monte directorios en un subdirectorio especial e instale un vínculo simbólico para cada directorio montado.
Asignación de Nombres
Construcción de un gran sistema de nombres global
Integrar sistemas de archivos existentes en un solo espacio de nombre global, pero utilizando soluciones sólo a nivel de usuario(GNS).
Proporciona los medios para estrablecer un espacio global donde varios espacios de nombres se han fusionado.
GNS mantiene un arbol virtual donde cada nodo es un directorio o una unión.
Desacoplar la informacion de nombres a partir de su ubicación existente.

Sincronización
Semántica de archivos compartidos
Necesario definir con precisión la semántica de lectura y escritura.El desempeño de un sistema distribuido en el cual todas las solicitudes de archivo deben dirigirse a un solo servidor con frecuencia es deficiente.

b)Si un cliente modifica localmente un archivo guardado en la memoria caché y poco después otro cliente lo lee desde el servidor, el segundo obtendrá un archivo obsoleto.
Semantica de sesión
Los cambios se hacen visibles solo cuando el cliente cierra el archivo

*Dos Clientes modifican al mismo tiempo el mismo archivo
Archivos Inmutables
Las únicas operaciones en archivos son
read
y
create.
Reemplazar los archivos en forma atómica.
*Dos procesos intentan reemplazar el mismo archivo a la vez.
*Un proceso reemplaza un archivo mientras otro lo está leyendo.
Transacciones Atómicas
Para acceder a un archivo o grupo de archivos, un proceso ejecuta primero algún tipo de primitivo BEGIN_TRANSACTION.

Cuando el trabajo solicitado ha sido completado, se ejecuta un primitivo END_TRANSACTION.

El sistema garantiza que todas las llamadas contenidas dentro de la transacción serán realizadas en orden, sin ninguna interferencia de otras transacciones concurrentes.
Bloqueos de Archivos
Tipo de Bloqueos
Compartimiento de Reservaciones
Compartimiento Archivos Coda
Seguridad
Seguridad en NFS
Un sistema de archivo remoto deberá ser presentado a los clientes como si fuera un sistema de archivo local.
Comunicación segura cliente-servidor.
Controlar los accesos a archivos
Un servidor de archivos verifica los derechos de acceso de sus clientes

RPC Segura
Control de acceso
Canal seguro= RPC seguras.
NFSv4 ocuparse de la autenticación.
*
Autenticación de sistema:
ID usuario, ID grupo efectivas al servidor y la lista de grupos del cual es parte.
*I
ntercambio de clave Diffie-Hellman:
establece una clave de sesión. Criptosistema.
*
Kerberos
: soporte
RPCSEC_GSS.
Proporciona los medios para implementar diferentes sistemas de autenticación.
Soporta integridad y confidencialidad de los mensajes.
Basado en
GSS-API
.
Soportar
LIPKEY
.
Proporciona mecánismos pero no especifíca nínguna política en particular.
Control de acceso soportado por
ACL
.
Operación
synchronize
.
Requerimientos de NFS capaces de interoperar con sistemas windows.
Acceso puede ser especifícado.
Varios tipos de usuarios.
Autenticación descentralizada
Administración de sistema central.
Sistema de archivos seguro(SFS).
Un usuario especifique que un usuario
remoto
tiene ciertos privilegios sobre sus archivos. Los usuarios deben ser globalmente conocidos por todos los servidores de autenticación.
Alicia especifique que "Bob cuyostalles se encuentran en X", tiene ciertos privilegios. El servidor de autenticación, que maneja credenciales de Alicia podría entonces ponerse en contacto con el servidor S para obtener información sobre Bob.
*Alicia sepa con seguridad que se trata del servidor de autenticación de Bob.
Nombres de autocertificantes.
El cleinte NFS, interfaz para comunicarse con los programas de usuario e intercamiar informacion con un cliente SFS.
El cliente SFS estalece canales seguros con un servidor SFS, admas se comunica con un agente de usuario SFS.
El servidor conforma el proceso central del SFS, el cual maneja solicitudes de archivos de clientes SFS

Organizacion de su espacio para nombres, utilizando nombres de rutas autocertificantes.
LOC, nombre de dominio DNS que identifica el servidor SFS, o su dirección ip.
HID, identificador de servidor que se calcula tomando la dispersión criptográfica H que incluya la ubicación del servidor y su clave pública.
HID=H(LOC,K+)
Nombre de ruta local, bajo el cual el archivo realmente está guardado.
/sfs/vucs ----->/sfs/sfs.cs.vu.nl:ag2hty4wior450hdh63u62i4f0kqere
Para ocultar el id del servidor, el usuario puede crear un vínculo simbólico
Sistema de compartimiento de archivos seguros punto a punto
Busquedas seguras en sistemas basados en DHT
A los nodos se les asigna identificadores de una forma segura.
Las tablas de ruta se mantienen seguras.
Las solicitudes de busqueda son remitidas con seguridad entre nodos.
Almacenamiento seguro colaborativo
Full transcript