Está en la página 1de 149

Tema 9

Sistemas de ficheros distribuidos


F. García-Carballeira, Mª. Soledad Escolar,
Luis Miguel Sánchez, Fco. Javier García

Sistemas Distribuidos
Grado en Ingeniería Informática
Universidad Carlos III de Madrid
Contenido
 Conceptos básicos
 Estructura de un sistema de ficheros distribuido
 Servicio de directorio
 Servicio de ficheros
 Implementación
 Semántica de coutilización
 Métodos de acceso
 Caché y coherencia de caché
 Ejemplos de sistemas de ficheros distribuidos
 Sistemas de ficheros paralelos
 Redes de almacenamiento
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 2
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Modelo de almacenamiento

Aplicaciones

Nivel Base
De ficheros/registros
Sistema de
De datos ficheros

Nivel de bloques Dispositivos


De almacenamiento

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 3
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Sistemas de ficheros
 Un sistema de ficheros establece una correspondencia
lógica entre los ficheros y directorios y los
dispositivos
 Funciones:
 Organización, almacenamiento, recuperación, gestión de
nombres, coutilización y protección de los ficheros
 Ofrece un mecanismo de abstracción que oculta todos los
detalles relacionados con el almacenamiento y distribución de
la información en los dispositivos, así como el funcionamiento
de los mismos. Ficheros + Directorios
Sistema de ficheros
Particiones/volúmenes

Dispositivos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 4
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Dispositivos
Ficheros + Directorios
 Discos duros Sistema de ficheros

Particiones/volúmenes

Dispositivos

 SSD (estado sólido): dispositivo de almacenamiento de


bloques basado en semiconductores que actúa como una
unidad de disco
 Basados en memorias Flash
 Basados en memorias DDR
 Requiere baterías y backup en disco para conseguir
almacenamiento no volátil
 Cached Flash
 Mezcla de memoria DDR y Flash
 Sistemas ópticos, …
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 5
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Tiempos de acceso

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 6
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Operaciones de E/S

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 7
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Tamaños de los discos
 Disco duro convencional
 1 TB
 Unidad de disco Flash
 352 GB
 Unidad de disco DDR
 12 GB

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 8
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplo
 RamSam-500 de Texas Memory Systems (TMS)
 Disco de estado sólido que combina memoria Flash y DDR
 2 TB de almacenamiento
 100000 IOPS
 Ancho de banda aleatorio de 2 GB/s para lecturas y escrituras
 Caché DDR de 16 a 64 GB para acelerar las escrituras
 Lecturas y escrituras en caché: 15 microsegundos de tiempo de
acceso
 Lecturas y escritura en Flash (fallo): 200 microsegundos de tiempo de
acceso (100000 IOPS y 2GB/s)

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 9
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Acceso a los dispositivos

CPU bus
Controlador

dispositivos
Mem.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 10
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Acceso a los dispositivos

CPU bus
Controlador

dispositivos
Mem.
ATA/IDE
SCSI
Serial ATA
Interfaz Serial Attached SCSI (SAS)
HIPPI (High Performance Parallel Interface)
IEEE 1394 (FireWire)
Fibre Channel (FCP)
InfiniBand

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 11
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Particiones o volúmenes
Ficheros + Directorios

Sistema de ficheros

 Porción de un disco o conjunto de discos con Particiones/volúmenes


identidad propia sobre la que se almacena un sistema de Dispositivos
ficheros
Partición 4 Partición 5

Partición 2

Partición 3

 Los gestores de volúmenes permiten incrementar el


tamaño de las particiones

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García
12 ARCOS @ UC3M 2012-2013
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España. Sistemas Distribuidos
Sistema de ficheros
Ficheros + Directorios

Sistema de ficheros

 Exporta una jerarquía de ficheros con un Particiones/volúmenes

conjunto de restricciones y métodos de acceso Dispositivos

 Ofrece una semántica e interfaz de acceso


 Coordina el acceso a los datos y metadatos
desde varias peticiones
 Gestiona la utilización de los discos
 Gestiona y mantiene la integridad de los datos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 13
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ficheros y directorios
Ficheros + Directorios

Sistema de ficheros
 Ficheros: datos + atributos
Particiones/volúmenes
 Directorio: relaciona nombres con ficheros
Dispositivos
Fichero

Volumen

Bloques usr user


lib

pepe juan

datos.txt prog.c prueba.txt datos2.txt

 Metadatos: información almacenada por el sistema


de ficheros para la gestión de ficheros y directorios

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 14
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplo de estructura de un sistema de
ficheros y metadatos

Grupo de bloques 0 Grupo de bloques 1 Grupo de bloques n

Super
Mapas de bits Nodos-i Datos y directorios
Bloque

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 15
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Tipos de sistemas de ficheros
 Sistemas de ficheros locales
 UFS, QFS,VXFS, JFS, JFS2, FAT, NTFS, EXT3, EXT2, Reiser,…
 Sistemas de ficheros distribuidos
 NFS, CIFS, …
 Sistemas de ficheros paralelos
 PFS, GPFS
 Sistemas de ficheros para discos compartidos (SAN y
Clusters)

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 16
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Sistemas de ficheros distribuidos
 Ofrece acceso a ficheros remotos de forma
transparente
 Permite compartir datos entre usuarios

LAN

Servidor de ficheros

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 17
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Requisitos de un sistema de ficheros
distribuido
 Transparencia
 Mismas operaciones para acceso locales y remotos
 Imagen única del sistema de ficheros
 Eficiencia. Un SFD tiene sobrecargas adicionales
 Red de comunicación, protocolos, posible necesidad de realizar más
copias, etc.
 Tolerancia a fallos:
 Replicación, funcionamiento degradado, etc.
 Facilidad de crecimiento (escalabilidad)
 Eliminar los cuellos de botella
 Consistencia
 Actualizaciones concurrentes
 Seguridad
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 18
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Componentes de un SFD

Programa Programa Programa  Modelo cliente-servidor


de usuario de usuario de usuario
 Servicios del sistema de
Interfaz del SFD ficheros. Operaciones
proporcionadas a los clientes
Red

 Servidores del sistema de


ficheros. Procesos de usuario o
Servicio de directorios del sistema que ofrecen los
Servicio de ficheros servicios correspondientes
(servidores multithread)

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García
19 ARCOS @ UC3M 2012-2013
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España. Sistemas Distribuidos
Empleo de múltiples servidores

clientes
servidores
/

/lib /bin /usr

/ LAN

/lib /bin /usr


/

/d1 /d2 /d3


/usr/d1 /usr/d3

/d3/f1 /d3/f2
/usr/d3/f1 /usr/d3/f2

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García
20 ARCOS @ UC3M 2012-2013
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España. Sistemas Distribuidos
Servicio de directorio
 Se encarga de la traducción de nombres de usuario a
nombres internos
 Directorio: relaciona de forma única nombres de fichero
con nombres internos
 Dos opciones:
 Los directorios son objetos independientes gestionados por un
servidor de directorios (SD)
 Los directorios son ficheros especiales. Servidor de ficheros y
de directorios combinados

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 21
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Gestión de nombres: principios básicos
 Transparencia de la posición: el nombre del objeto no permite
obtener directamente el lugar donde esta almacenado
 Independencia de la posición: el nombre no necesita ser
cambiado cuando el objeto cambia de lugar
 Asociación entre nombre y posición dinámica
 Propiedad más exigente que la transparencia
 Facilidad de crecimiento
 Replicación
 Nombres orientados al usuario

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 22
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Nombrado de dos niveles
 Nombres de usuario
 Generalmente el espacio de nombres es jerárquico
 Tres alternativas
 Máquina: nombre de fichero
 Ni transparencia, ni independencia

 Montar un sistema de ficheros remoto sobre la jerarquía local (NFS)


 Espacio de nombres diferente en cada máquina

 Único espacio de nombres en todas las máquinas


 Proporciona transparencia

 Nombres internos:
 Identificador único de fichero utilizado por el sistema

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 23
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Espacio de nombres jerárquico
Servidor X
Root (/)

Puntos
De
montaje
a c
b

Servidor Y Servidor Z
g
d e f h i

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 24
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Resolución de nombres
 Dirigida por los clientes: NFS
 Dirigida por los servidores
 Resolución iterativa
 El cliente envía el nombre al SD
 El SD realiza la traducción hasta que termina en un componente que pertenece a otro
SD
 El SD envía el resultado al cliente, el cual si no ha terminado la traducción continúa con
el SD correspondiente
 Resolución transitiva
 Los SD implicados contactan entre si para llevar a cabo la traducción. El último SD
devuelve la traducción al cliente
 Rompe el modelo cliente/servidor (no adecuado para RPC)
 Resolución recursiva
 El último SD implicado devuelve el resultado al anterior y así sucesivamente hasta que
el primero responde al cliente

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 25
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Servicio de ficheros
 Se encarga de la gestión de los ficheros y del acceso a los
datos
 Aspectos relacionados
 Semántica de coutilización
 Métodos de acceso
 Caché de bloques
 El problema de la coherencia de cache
 Métodos para mejorar el rendimiento

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 26
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Semánticas de coutilización
 Sesión: serie de accesos que realiza un cliente entre un open y
un close
 La semántica de coutilización especifica el efecto de varios
procesos accediendo de forma simultánea al mismo fichero
 Semánticas
 Semántica UNIX
 Semántica de sesión
 Semántica de ficheros inmutables
 Semántica de transacciones

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 27
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Semánticas de coutilización
 Semántica UNIX
 Una lectura ve los efectos de todas las escrituras previas
 El efecto de dos escrituras sucesivas es el de la última de ellas
 Los procesos pueden compartir el puntero de la posición (si están
emparentados)
 Difícil de implementar en sistemas distribuidos
 Mantener un copia única

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 28
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Semánticas de coutilización
 Semántica de sesión:
 Cambios a un fichero abierto son visibles únicamente en el proceso
(nodo) que modificó el fichero
 Una vez cerrado el fichero, los cambios se hacen visibles a futuras
sesiones
 Múltiples imágenes del fichero
 Dos sesiones sobre el mismo fichero que terminan concurrentemente: la
última deja el resultado final
 Si dos procesos quieren compartir datos deben abrir y cerrar el fichero
para propagar los datos
 No adecuado para procesos que acceden de forma concurrente a un fichero
 No existen punteros compartidos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 29
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Semánticas de coutilización
 Semántica de ficheros inmutables
 El contenido de un fichero no puede modificarse
 El nombre del fichero no puede reutilizarse
 Sólo se puede compartir un fichero para sólo lectura

 Semántica de transacciones:
 Todo acceso al fichero se realiza entre
 BEGIN TRANSACTION
 END TRANSACTION
 El sistema asegura que dos transacciones ejecutadas de forma concurrente
tienen el efecto equivalente a ejecutarlas secuencialmente en algún orden

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 30
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Métodos de acceso remoto
 Modelo carga/descarga
 Transferencias completas del fichero
 Localmente se almacenan en memoria o discos locales
 Normalmente utilizan semántica de sesión
 Eficiencia en las transferencias
 Llamada open con mucha latencia
 Múltiples copias de un fichero
 Modelo de servicios remotos
 El servidor debe proporcionar todas las operaciones sobre el fichero.
 Acceso por bloques
 Modelo cliente/servidor
 Empleo de caché en el cliente
 Combina los dos modelos anteriores.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 31
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Caché de bloques
 El empleo de caché de bloques permite mejorar el
rendimiento
 Explota el principio de proximidad de referencias
 Proximidad temporal
 Proximidad espacial
 Lecturas adelantadas
 Mejora el rendimiento de las operaciones de lectura, sobre todo si son
secuenciales
 Escrituras diferidas
 Mejora el rendimiento de las escrituras
 Otros tipos de caché
 Caché de nombres
 Caché de metadatos del sistema de ficheros

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 32
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Localización de las caché en un SFD
 Caché en los servidores
 Reducen los accesos a disco
 Caché en los clientes
 Reducen el tráfico por la red
 Reducen la carga en los servidores
 Mejora la capacidad de crecimiento
 Dos posibles localizaciones
 En discos locales
 Más capacidad,

 Más lento

 No volátil, facilita la recuperación

 En memoria principal
 Menor capacidad

 Más rápido

 Memoria volátil

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 33
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente

Cache

Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 34
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 35
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache
Buscar bloque.
Si no está,
reservar uno

Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 36
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 37
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

read()
Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 38
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

read()
Servidor

Cache Buscar bloque.


Si no está,
reservar uno

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 39
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

read()
Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 40
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

read()
Servidor

Cache

read()
Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 41
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

read()
Servidor

Cache

read()
Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 42
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

read()
Servidor

Cache

read()
Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 43
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
datos Cliente
read() Cache

read()
Servidor

Cache

read()
Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 44
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
Cliente
read() Cache

Lectura posterior

Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 45
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
datos Cliente
read() Cache

Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 46
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Funcionamiento de una caché de
bloques
Proceso de usuario
datos Cliente
read() Cache

Sin acceso al servidor Servidor

Cache

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 47
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Tamaño de la unidad de caché
 Mayor tamaño puede incrementar la tasa de aciertos y
mejorar la utilización de la red pero
 Aumentan los problemas de coherencia
 Depende de las características de las aplicaciones
 En memoria caché grandes
 Es beneficioso emplear bloques grandes (8 KB y más)
 En memorias pequeñas
 El uso de bloques grandes es menos adecuado

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 48
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Políticas de actualización
 Escritura inmediata (write-through)
 Buena fiabilidad
 En escrituras se obtiene el mismo rendimiento que en el modelo de
accesos remotos
 Escritura diferida (write-back, delayed-write)
 Escrituras más rápidas. Se reduce el tráfico en la red
 Los datos pueden borrarse antes de ser enviados al servidor
 Alternativas
 Volcado (flush) periódico (Sprite)
 Write-on-close
 Write-full
 Write-before-full (ParFiSys)

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 49
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente

Servidor

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 50
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read()

Servidor

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 51
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

Servidor

Bloque sucio Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 52
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache
Algoritmo
de reemplazo

Servidor

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 53
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

Servidor

Bloque a expulsar Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 54
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() Servidor

Bloque limpio Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 55
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() Servidor

Cache

Bloque sucio Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 56
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() Servidor

Cache
Algoritmo
de reemplazo

Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 57
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() Servidor

Cache

Bloque a expulsar Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 58
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() Servidor

Cache

write()
Bloque limpio Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 59
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() Servidor

Cache

read()
write()
Bloque solicitado Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 60
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache

write() read() Servidor

Cache

read()
write()
Bloque solicitado Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 61
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Write-full
Proceso de usuario
Cliente
read() Cache
datos

write() read() Servidor

Cache

read()
write()
Disco

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 62
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
 El uso de caché en los clientes de un sistema de ficheros
introduce el problema de la coherencia de caché:
 Múltiples copias.
 El problema surge cuando se coutiliza un fichero en
escritura:
 Coutilización en escritura secuencial
 Típico en entornos y aplicaciones distribuidas.
 Coutilización en escritura concurrente
 Típico en aplicaciones paralelas.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 63
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 64
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

open

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 65
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

write

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 66
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

close

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 67
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 68
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

open

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 69
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la no actualización de
las copias

Cache en el cliente A Cache en el cliente B

read ⇒ INCONSISTENCIA
Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 70
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 71
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

open

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 72
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

read

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 73
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

write

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 74
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

close

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 75
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 76
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

open

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 77
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia en escritura secuencial debido a la utilización de
técnicas de escritura diferida

Cache en el cliente A Cache en el cliente B

read ⇒ INCONSISTENCIA
Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 78
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia debido a la coutilización en escritura concurrente

Cache en el cliente A Cache en el cliente B

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 79
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia debido a la colutilización en escritura concurrente

Cache en el cliente A Cache en el cliente B

open open

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 80
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia debido a la colutilización en escritura concurrente

Cache en el cliente A Cache en el cliente B

read read

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 81
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia debido a la colutilización en escritura concurrente

Cache en el cliente A Cache en el cliente B

write

Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 82
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problema de la coherencia de caché
Inconsistencia debido a la colutilización en escritura concurrente

Cache en el cliente A Cache en el cliente B

read ⇒ INCONSISTENCIA
Fichero

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 83
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Soluciones al problema de la coherencia
 No emplear caché en los clientes
 Solución trivial que no permite explotar las ventajas del uso de caché en
los clientes (reutilización, lectura adelantada y escritura diferida)
 No utilizar caché en los clientes para datos compartidos en
escritura (Sprite)
 Accesos remotos sobre una única copia asegura semántica UNIX
 Mecanismos de caché sin replicación de datos
 Basado en esquemas cooperativos que definen un único espacio global
formado por la unión de todas las caché del sistema.
 Los datos fluyen a través de las caches sin replicación
 Empleo de protocolos de coherencia de caché

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 84
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Protocolos de coherencia de cache
 Objetivos:
 Permitir el uso de caché en los clientes manteniendo
coherente la información de acuerdo a la semántica de
coutilización que define el sistema de ficheros
 Aspectos de diseño a considerar
 Granularidad del protocolo
 Mecanismo de validación
 Mecanismos de actualización
 Localización de las copias en las caches de los clientes

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 85
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Granularidad del protocolo
 Tamaño de la unidad sobre la que se mantiene
coherencia
 Puede variar desde un único byte hasta el fichero completo
 Ejemplos:
 Sprite: fichero completo
 Coda: conjunto de ficheros (volumen)
 ParFiSys: regiones de tamaño y forma variable definidas por el
usuario
 Con semánticas UNIX, unidades grandes y acceso
concurrentes:
 Posible falsa coutilización

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 86
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Falsa coutilización
Proceso A Proceso B

Unidad de coherencia

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 87
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Validación de la cache
 Determinar si un dato almacenado en la caché es
consistente
 Validación iniciada por el cliente. Contactar con el
servidor para determinar el estado de la copia
 Frecuencia de validación
 En cada acceso
 Al abrir el fichero
 Periódicamente
 Necesidad de almacenar información sobre la última
actualización en caso de escritura diferida.
 Crece el tráfico de la red, consume CPU en el servidor y
aumenta el tiempo de servicio de las peticiones
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 88
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Validación de la cache
 Validación iniciada por el servidor
 El servidor almacena información sobre los datos accedidos
por cada cliente y el modo de acceso
 Servidores con estado (implicaciones sobre la tolerancia a
fallos)
 Si un dato es accedido por dos o más clientes, al menos uno en
modo escritura, se notifica a los clientes para que invaliden o
actualicen las caches
 Rompe el modelo cliente/servidor

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 89
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Mecanismos de actualización
 Cuando hay una modificación sobre una copia y es
necesario mantener una visión coherente hay que
actualizar el resto de copias.
 Métodos:
 Actualización de las copias
 Invalidación de las copias

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 90
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Mecanismos de actualización
 Actualización de todas las copias
 Excesivo tráfico en la red
 Inviable en sistemas de ficheros
 Invalidación de las copias. Se invalidan las copias y los
futuros accesos se realizan sobre una copia consistente.
 Mensajes más cortos, menos tráfico en la red
 Mayor capacidad de crecimiento

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 91
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Localización de las copias
 Es necesario conocer qué clientes almacenan copias de datos
para realizar las acciones del protocolo
 Se utilizan esquemas basados en directorios. Cada entrada
almacena la lista de clientes con copias en su cache.
 Directorio de mapa completo
 Directorio limitado
 Lista encadenada
 Directorios centralizados: un único gestor se encarga de la
coherencia de todos los ficheros del sistema
 Posible cuello de botella
 Directorios distribuidos: existen varios gestores
 Mejor capacidad de crecimiento

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 92
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Caché en los clientes contra acceso
remoto
 Rendimiento cercano al de un sistema centralizado
 Menor carga en el servidor y en la red. Se permiten
transferencias más grandes por la red
 Facilita el crecimiento proporcional del rendimiento del
sistema
 Dificultades relacionadas con el mantenimiento de la
coherencia

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 93
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplo: coherencia de caché del SF
Sprite
 Sprite: Sistema de ficheros desarrollador en Berkeley a finales de los 80
 Implementa consistencia secuencial
 Solo se almacena en caché los datos, no los metadatos
 Cuando un servidor detecta que un fichero está abierto en múltiples
clientes (máquinas) y en alguna de ellas se abre para escritura, se
desactiva la caché en todos los clientes;
 Todas las lecturas y escritura del ficheros se hacen de forma remota

 Si solo hay un escritor se utiliza write-back


 Para identificar los bloques obsoletos se utiliza
 Número de versión para el fichero
 Se sigue la pista del último escritor

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 94
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Aspectos de tolerancia a fallos
 Servidores con estado
 Cuando se abre un fichero, el servidor almacena información y
da al cliente un identificador único a utilizar en las posteriores
llamadas
 Cuando se cierra un fichero se libera la información
 Servidores sin estado
 Cada petición es autocontenida (fichero y posición)

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 95
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Aspectos de tolerancia a fallos
 Ventajas de los servidores con estado
 Mensajes de petición más cortos
 Mejor rendimiento (se mantiene información en memoria)
 Facilita la lectura adelantada. El servidor puede analizar el patrón de
accesos que realiza cada cliente
 Es necesario en invalidaciones iniciadas por el servidor
 Ventajas de los servidores sin estado
 Más tolerante a fallos
 No son necesarios open y close. Se reduce el nº de mensajes
 No se gasta memoria en el servidor para almacenar el estado
 Otros aspectos: replicación de ficheros

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 96
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
¿Cómo mejorar el rendimiento?
 Empleo de caché
 Cuidado con los protocolos de coherencia de cache
 Uso de paralelismo
 Múltiples discos y nodos de E/S
 Distribución de los datos entre los discos y los nodos de E/S
 Sistemas de ficheros paralelos
 Uso de interfaces paralelas
 MPI-IO

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 97
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
NFS (Network File System)
 Sistemas de ficheros de Sun Microsystem (1985)
 Implementación y especificación de un servicio de acceso a
ficheros remotos
 Diseñado para trabajar en entornos heterogéneos (diferentes
máquinas, sistemas operativos, ...)
 La independencia se consigue mediante el uso de las RPC
construidas sobre el protocolo XDR
 Las diferentes máquinas montan un directorio remoto en el
sistema de ficheros local
 El espacio de nombres es diferente en cada máquina
 El montado no es transparente, debe proporcionarse el nombre de la
máquina remota

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 98
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Montado en NFS
 Establece una conexión lógica entre el servidor y el
cliente
 La máquina A exporta /usr y /bin
 En la máquina B:
 mount máquinaA:/usr /usr
Máquina Máquina
A B

/ /

usr bin bin usr home

include lib

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 99
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Montado en NFS
 La imagen del SF puede ser diferente en distintos clientes

Cliente A Servidor Cliente B


(root) (root) (root)

usr ... vmunix usr usr

bin local local x lib

bin lib . . .

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 100
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Arquitectura de NFS
CLIENTE SERVIDOR
CAPA DE LLAMADA
AL SISTEMA

CAPA DEL SISTEMA CAPA DEL SISTEMA


DE FICHEROS VIRT. DE FICHEROS VIRT.

S.O. CLIENTE S.O. SERVIDOR


LOCAL NFS LOCAL NFS

DISCO RPC/XDR DISCO RPC/XDR


LOCAL LOCAL

RED
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 101
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Sistema de ficheros virtual
 El VFS ofrece la interfaz de acceso a ficheros y
directorios
 Independiente del SF concreto
 En UNIX cada fichero viene definido por un
nodo-v (nodo virtual)
 Algunos atributos
 Puntero al nodo-i real del fichero
 Puntero a las funciones que ejecutan los
servicios

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 102
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Nodo virtual

nodo-v
Información
del archivo
virtual
Direcciones de
las operaciones
virtuales

Dirección del
nodo-i
específico slD

p
se
a

lD
a
ilte

a
re
p
u
co

ce
p
d
o
s
nr

íce
Ircu
d
v

tiv

ifa
o
rp
fn
m
a
o ica

e
n
n
h
ó
lo

cio
v

sd
l

ií-o
fn

icse
n
o
d
S
le
d
c
s

A
o
n

T
lb
a

le
ficn
d u
-
io

e
d
d

se
n
o
S
A

nodo-i

Direcciones de
las operaciones
específicas de SA

Tabla de
funciones
del SA

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 103
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Protocolo NFS
 La versión 3 es estándar en Internet (RFC 1813)
 Ofrece un conjunto de RPC para realizar operaciones sobre
ficheros remotos
 Búsqueda de un fichero en un directorio
 Lectura de entradas de directorio
 Manipulación de enlaces y directorios
 Acceso a los atributos de un fichero
 Lectura y escritura de ficheros
 Los servidores de NFS no almacenan estado
 Operaciones autocontenidas
 El servidor no puede almacenar el puntero de la posición del fichero, lo debe
mantener el cliente
 El servidor no almacena información entre llamadas
 El protocolo no ofrece mecanismos de control de
concurrencia para asegurar una semántica UNIX
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 104
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Manejadores de ficheros (file handle)
 Estructura opaca que identifica a un fichero remoto
 Típico filehandle en UNIX

Id. del sistema de Número de generación


Número de nodo-i
ficheros de nodo-i

 VFS almacena una entrada por cada archivo abierto


(vnode)
 Cada vnode apunta a un inodo local o a un filehandle
 Cuando un fichero es local el nodo-v contiene el nodo-i.
 Cuando el fichero es remoto el nodo-v contiene el filehandle

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 105
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Operaciones
lookup(dirfh, name) -> fh, attr Busca un fichero en un directorio dado por dirfh

create(dirfh, name, attr) -> Crea un fichero con unos atributos en un directorio
newfh, attr
remove(dirfh, name) status Elimina un fichero de un directorio
getattr(fh) -> attr Devuelve los atributos de un ficheros

setattr(fh, attr) -> attr


Modifica los atributos. Si el tamaño se pone a 0 se trunca el
fichero
read(fh, offset, count) -> attr, data Lectura de un fichero.
Devuelve los últimos atributos del fichero.
write(fh, offset, count, data) -> attr Escritura en un fichero. Devuelve los atributos después de
realizada la escritura
rename(dirfh, name, todirfh, toname) Cambia el nombre de un fichero
-> status .
link(newdirfh, newname, dirfh, name) Crea un enlace
-> status

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 106
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Operaciones
symlink(newdirfh, newname, string) Crea un enlace simbólico
-> status

readlink(fh) -> string Devuelve el nombre asociado con un enlace simbólico

mkdir(dirfh, name, attr) -> Crea un directorio


newfh, attr
rmdir(dirfh, name) -> status Elimina un directorio vacio

readdir(dirfh, cookie, count) -> Devuelve hasta count bytes de entradas de un directorio
entries Cada entrada contiene un nombre de fichero, su manejador y un
Puntero opaco utilizado en la siguiente llamada readdir.
Si cookie es 0 se lee la primera entrada del directorio.

statfs(fh) -> fsstats Devuelve información del sistema de ficheros


(block size, número de bloques libres, etc.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 107
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Traducción de nombres
 El cliente realiza la traducción de un nombre (path)
componente a componente. Cuando un vnode apunta a
filehandle la búsqueda se realiza en el servidor (una
componente cada vez)
 lookup(dir, name) devuelve (fh, attr)
 Devuelve el fh y los atributos de un fichero del directorio dir
 Falla si el cliente no tiene permisos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 108
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Traducción de nombres
 Una única llamada open
fd = open(“/usr/joe/6360/list.txt”)

Da lugar a varias operaciones remotas:


lookup(rootfh, “usr”) devuelve (fh0, attr)
lookup(fh0, “joe”) devuelve (fh1, attr)
lookup(fh1, “6360”) devuelve (fh2, attr)
lookup(fh2, “list.txt”) devuelve (fh, attr)

 El filehandle fh identifica al fichero list.txt y se utilizará en


las operaciones de lectura y escritura posteriores.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 109
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Acceso a los ficheros
 Se realiza con el filehandle:
 read(fh, offset, cont) devuelve (datos, attr)
 write(fh, offset, cont, data) devuelve (attr)

 Transferencias en bloques
 En la versión 2 hasta 8 KB
 En la versión 3 se puede negociar
 Los clientes realizan lecturas adelantadas de un bloque
 Las escrituras se realizan localmente. Los bloques se
envían al servidor cuando se llena un bloque o cuando se
cierra el fichero
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 110
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Escritura en la caché del servidor
 Política de actualización en la versión 2: write-through
 Política de actualización en la versión 3: la operación de
escritura ofrece dos posibilidades:
 Write-through: se escribe a disco antes de contestar al
cliente
 Delayed-write: se escribe solo en memoria caché
 La operación commit fuerza la escritura en disco. Normalmente los
clientes envían esta operación en el close.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 111
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Caché en los clientes
 Necesaria para mejorar el rendimiento
 El cliente NFS almacena en caché el resultado de las operaciones: read,
write, getattr, lookup y readdir
 Caché de datos
 Caché de atributos

 La caché introduce un posible problema de coherencia:


 Dado un fichero modificado concurrentemente por dos clientes
 Si el fichero se almacena en la caché de los dos clientes:
 A no verá los cambios hechos por B
 B no verá los cambios hechos por A

 Actualizaciones inconsistentes
 No se garantiza la semántica UNIX

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 112
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Solución
 Los clientes deben:
 Enviar periódicamente los bloques modificados al servidor
 Cuando un fichero se abre en un cliente se comprueba en el servidor si
la información se ha modificado
 Si se ha modificado se descartan los bloques de la caché
 Piden al servidor que revalide la información que tiene en su caché
 3-30 segundos para ficheros
 30-60 segundos para directorios
 El bloque se descarta si ha sido modificado en el servidor
 Los atributos en caché se descartan después de
 3 segundos para atributos de ficheros
 30 segundos para atributos de directorios

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 113
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Protocolo de montado
program MOUNT_PROGRAM {
version MOUNT_V3 {
void MOUNTPROC3_NULL(void) = 0;
mountres3 MOUNTPROC3_MNT(dirpath) = 1;
mountlist MOUNTPROC3_DUMP(void) = 2;
void MOUNTPROC3_UMNT(dirpath) = 3;
void MOUNTPROC3_UMNTALL(void) = 4;
exports MOUNTPROC3_EXPORT(void) = 5;
} = 3;
} = 100005;

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 114
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Protocolo NFS
program NFS_PROGRAM {
version NFS_V3 {
void NFSPROC3_NULL(void) = 0;
GETATTR3res NFSPROC3_GETATTR(GETATTR3args) = 1;
SETATTR3res NFSPROC3_SETATTR(SETATTR3args) = 2;
LOOKUP3res NFSPROC3_LOOKUP(LOOKUP3args) = 3;
ACCESS3res NFSPROC3_ACCESS(ACCESS3args) = 4;
READLINK3res NFSPROC3_READLINK(READLINK3args) = 5;
READ3res NFSPROC3_READ(READ3args) = 6;
WRITE3res NFSPROC3_WRITE(WRITE3args) = 7;
CREATE3res NFSPROC3_CREATE(CREATE3args) = 8;
MKDIR3res NFSPROC3_MKDIR(MKDIR3args) = 9;
SYMLINK3res NFSPROC3_SYMLINK(SYMLINK3args) = 10;
MKNOD3res NFSPROC3_MKNOD(MKNOD3args) = 11;
REMOVE3res NFSPROC3_REMOVE(REMOVE3args) = 12;

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 115
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Protocolo NFS
RMDIR3res NFSPROC3_RMDIR(RMDIR3args) = 13;
RENAME3res NFSPROC3_RENAME(RENAME3args) = 14;
LINK3res NFSPROC3_LINK(LINK3args) = 15;
READDIR3res NFSPROC3_READDIR(READDIR3args) = 16;
READDIRPLUS3res FSPROC3_READDIRPLUS(READDIRPLUS3args) = 17;
FSSTAT3res NFSPROC3_FSSTAT(FSSTAT3args) = 18;
FSINFO3res NFSPROC3_FSINFO(FSINFO3args) = 19;
PATHCONF3res NFSPROC3_PATHCONF(PATHCONF3args) = 20;
COMMIT3res NFSPROC3_COMMIT(COMMIT3args) = 21;
} = 3;
} = 100003;

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 116
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
LOOKUP3res
NFSPROC3_LOOKUP(LOOKUP3args)
struct LOOKUP3args {
diropargs3 what;
};
struct diropargs3 {
nfs_fh3 dir;
filename3 name;
};

union LOOKUP3res switch (nfsstat3 status) {


case NFS3_OK:
LOOKUP3resok resok;
default:
LOOKUP3resfail resfail;
};
struct LOOKUP3resok {
nfs_fh3 object;
post_op_attr obj_attributes;
post_op_attr dir_attributes;
};
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 117
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
WRITE3res
NFSPROC3_WRITE(WRITE3args)
struct WRITE3args {
nfs_fh3 file;
offset3 offset;
count3 count;
stable_how stable;
opaque data<>;
};
union WRITE3res switch (nfsstat3 status) {
case NFS3_OK:
WRITE3resok resok;
default:
WRITE3resfail resfail;
};
struct WRITE3resok {
wcc_data file_wcc;
count3 count;
stable_how committed;
writeverf3 verf;
};
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 118
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
READ3res NFSPROC3_READ(READ3args)
struct READ3args {
nfs_fh3 file;
offset3 offset;
count3 count;
};
union READ3res switch (nfsstat3 status) {
case NFS3_OK:
READ3resok resok;
default:
READ3resfail resfail;
};
struct READ3resok {
post_op_attr file_attributes;
count3 count;
bool eof;
opaque data<>;
};
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 119
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Sistemas de ficheros paralelos (PFS)

 Múltiples nodos de E/S


 Incrementa el ancho de banda
 Fichero distribuido entre
diferentes nodos de E/S
 Acceso paralelo
 A diferentes ficheros
 Al mismo fichero
 Interfaces de E/S paralela
 MPI-IO
 Optimizaciones
 E/S colectiva
 Acceso a datos no contiguos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 120
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Arquitectura de un sistema de ficheros
paralelo
Nodo de cómputo
Aplicaciones
Nodos de cómputo
Cliente

Red de comunicación

Servidor Servidor Servidor


de E/S de E/S de E/S

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 121
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Arquitectura de un sistema de ficheros
paralelo
Nodo de cómputo
Aplicaciones
Nodos de cómputo
Cliente

Red de comunicación

Servidor Servidor Servidor


de E/S de E/S de E/S

Fichero 1
Fichero 2

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 122
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Arquitectura de un sistema de ficheros
paralelo
Nodo de cómputo
Aplicaciones
Nodos de cómputo
Cliente

Red de comunicación

Servidor Servidor Servidor


de E/S de E/S de E/S

Fichero 1
Fichero 2

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 123
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplos
 PVFS
 GPFS

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 124
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Sistemas de almacenamiento en red
 Infraestructura tradicional
 Discos conectados a los servidores (DAS, Direct Attach Storage)
 Redes de almacenamiento
 NAS (Network Attached Storage)
 SAN (Storage Area Networks)
 Sistemas de ficheros para discos compartidos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 125
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Infraestructura tradicional
DAS (Direct Attach Storage) Conexión directa al servidor

Clientes
heterogéneos

LAN

Servidores

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 126
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Conexión directa al servidor
 Ventajas:
 Servicios independientes
 Inconvenientes:
 Administración y mantenimiento
 Saturación de servidores y LAN en los Backup
 Escalabilidad
 Coste
 Rendimiento
 Dificultades para un correcto aprovisionamiento de
almacenamiento
 Mala utilización de los recursos
50% 50% 95%

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 127
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplo: NFS

/home
/a
/b
NFS server

/home
/a
LAN
/b /home
/a
/b

/home Exporta un directorio


/a
/b

Montan el directorio remoto


F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 128
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Problemas de rendimiento
 Los servidores pueden convertirse en un cuello de botella
 Solución no escalable
 Solución
 Utilizar más servidores
 Particionar 14

ancho de banda agregado (MB/s)


12

10

0
1 2 4 8 16
Número de clientes
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 129
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplo de particionamiento
 Difícil gestión Servidor NFS

/home1 /home1
/a /a
/b /b
/home2
/c
/d
/home3 LAN /home2
/e /c
/f /d

/home3
/e
/f

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 130
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Almacenamiento en red

Aplicaciones de gestión

Elementos de interconexión
 Cables, conectores
 Swithes, routers, hub
Servidores Almacenamiento
HBA
F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 131
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Consolidación del almacenamiento

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 132
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
NAS (Network Attached Storage)
 Dispositivo de almacenamiento con conexión directa a la red
 Almacenamiento
 Servidor
 Protocolos estándar
 NFS
 CIFS LAN
 HTTP

NAS

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 133
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Elementos de una NAS
 TCP/IP
 Sistema de ficheros
TCP/IP
 NFS, CIFS, HTTP
 SW de gestión Sistema de
ficheros
 SW de diagnostico
SW de
 Análisis de fallos, alertas diagnóstico
 Características tolerantes a fallos Controlador
 Componentes redundantes RAID

 Componentes Hot-swap
 Discos RAID

Gestión

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 134
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
SAN (Storage Area Networks)
Clientes Servidores Almacenamiento

LAN RED

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 135
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
NAS vs SAN
 Network Attached Storage (NAS)
 CIFS y NFS
 Acceso a nivel de fichero
 Solución más económica
 Peor ancho de banda y más latencia

 Storage Area Networks (SANs):


 Protocolos de red: Fibre Channel, iSCSI
 Alto ancho de banda y baja latencia
 Acceso a nivel de bloque
 Solución costosa

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 136
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Fibre Channel
 Mecanismo de transporte genérico
 Puede utilizar cables de fibra óptica y cobre
 Interfaz para transferencia serie de datos a alta velocidad
y baja latencia (GB/s) a largas distancias (hasta 10 Km)
 100/200/400/800/1200 MB/s
 Utiliza FCP (fibre channel protocol): implementación serie
de SCSI

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 137
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Diferentes topologías

Punto a Punto hub switch

FC tiene un espacio de direcciones de 24 bits


F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 138
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Adaptadores
Adaptador PCI

HBA (Host Bus Adapter)

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 139
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
iSCSI
 Acceso a dispositivos de almacenamiento a través de
redes TCP/IP.

Servidor

Almacenamiento
Primario FC.
LAN
Servidor
DISK
Ethernet
DISK

DISK

DISK

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 140
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
iSCSI
 Tramas SCSI sobre paquetes IP.
 El protocolo TCP/IP realiza:
 Control de congestión
 Entrega ordenada de paquetes
 Corrección de errores
 iSCSI habilita acceso universal
Cabecera Cabecera TCP Cabecera
LAN / WAN IP iSCSI
SCSI Data CRC

• Dos tipos de tramas:


• Comandos SCSI
• Bloques de datos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 141
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ventajas: Alta disponibilidad

www.snia.org

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 142
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ventajas Reducción de los costes de alta
disponibilidad

Con DAS Con SAN

www.snia.org

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 143
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ventajas: Backup sin intervención de
los servidores
 Copia directa entre dispositivos de almacenamiento

www.snia.org

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 144
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Escenario mixto iSCSI y Fibre Channel
Edificio A Edificio B
Almacenamiento
Windows server
Secundario. LAN iSCSI

SAN
Router FC/iSCSI.

DISK
Fibre Channel
DISK

DISK

DISK

Almacenamiento
Primario FC.

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 145
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Almacenamiento en redes WAN
 Datos globales
 Continuidad del negocio
 Diversificación del negocio
 Caching de datos cercanos a su uso
 Transferencias basadas en IP, iSCSI,, FCIP

Data Center A Data Center B

SAN SAN

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 146
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Sistemas de ficheros de discos
compartidos
 Los clientes pueden acceder directamente a los
discos
 Requiere un gestor de metadatos

Sistema de ficheros compartido

RED

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 147
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ventajas
 Se mejora el rendimiento
 Acceso directo a los discos sin intervención de un servidor
 Acceso paralelo
 Acceso a grandes ficheros
 Acceso a muchos ficheros pequeños
 Mejor disponibilidad
 No existe un servidor central, requiere disponibilidad en los discos

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 148
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
Ejemplos
 GPFS
 GFS
 OCFS

F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García 149
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.

También podría gustarte