200 likes | 440 Views
Sistemas Distribuídos. Sistemas de Ficheros Distribuídos: CODA e Intermezzo. Tipos de sistemas de ficheros en red (I). SAN (Storage Area Network) Alto rendimiento Ancho de banda muy elevado, striping Soporta gran carga de escrituras/lecturas compartidas VMS Clusters, XFS, GFS, Nasd, Cheops.
E N D
Sistemas Distribuídos Sistemas de Ficheros Distribuídos: CODA e Intermezzo
Tipos de sistemas de ficheros en red (I) • SAN (Storage Area Network) • Alto rendimiento • Ancho de banda muy elevado, striping • Soporta gran carga de escrituras/lecturas compartidas • VMS Clusters, XFS, GFS, Nasd, Cheops
Tipos de sistemas de ficheros en red (II) • WLAN: Sistema de ficheros en red convencionales • Seguridad • Disponibilidad • Escalabilidad • Ancho de banda variable
CODA • Objetivos • Altas prestaciones a través de un caché persistente en el lado del cliente. • Replicación en varios servidores. • Buena escalabilidad. • Adaptación al ancho de banda. • Funcionamiento continuado durante fallos producidos en la red del servidor.
CODA • Objetivos (Cont.) • Posibilidad de funcionamiento desconectado para procesadores móviles. • Modelo de seguridad para autentificación, encriptación y control de acceso. • Semántica bien definida de compartición, incluso con fallos en la red. • Disponible de manera gratuita
VFS File access • Maneja astraciones de ficheros a nivel de núcleo. Un único formato para todos los sistemas de ficheros • Recibe las llamadas al sistema generadas por los usuarios (p.e. write, open, stat, link) • Interactua con sistemas de ficheros específcos montados en un punto • Recibe peticiones de otras partes del núcleo, mayormente del sistema de memoria VFS nfs VFS ext2fs Coda FS VFS disk udp Venus
CODA • Arquitectura
Servidores CODA (Vice) • Dos particiones: Datos + Log • Detección de servidores automática • Replicación: Organización en grupos de almacenamiento • Se utiliza una partición de LOG para el seguimiento de réplicas divergentes. • RVM: Paquete de recuperación de transacciones en memoria virtual.
Interacción con los usuarios • Resolución de conflictos • Resueltos automáticamente • Resolvedores específicos • Resueltos por el usuario • Autenticación • Control de acceso mediante ACL
Actividades actuales • Mejorar las prestaciones y la fiabilidad. • Portarlo a distintas plataformas. • Documentación y grupos de noticias. • Extensiones en su funcionalidad.
Intermezzo • Objetivos • Diseñado para obtener la mayoria de funcionalidades e CODA • Alta disponibilidad • Replicación flexible de directorios • Operación en modo desconectado • Caché persistente • Implementación para WIN32 en curso
Servidores Intermezzo • Uso intensivo de los sistemas de ficheros orientados a transacciones • NO Detección de servidores automática • Uso del protocolo HTML para la comunicación y sincronización • Autentiación y Seguridad: Beneficio del software existente SSL e IPSEC
Aspectos de rendimiento (I) • Sólo lectura • NFS realiza RPC • CODA trabaja síncrono con el controlador de caché • NetBSD carece de caché (Buffer o Mem Virtual)
Aspectos de rendimiento (II) • Lectura – Escritura • NetBSD y CODA tiene tráfico síncrono con los discos • NFS y CODA realizan RPC’s de forma síncrona • Intermezzo tiene una caché WB a nivel de núcleo
Escalabilidad y Recuperación (I) • Recuperación después de una caída – fsck • ¿Existen aún los directorios y los bloques? • Desafío enorme, algoritmo cuadrático • Millones de ficheros • Una solución basada en bitácora debe funcionar • Intermezzo: Deja hacer el trabajo al sistema de ficheros
Conclusiones (I) • CODA funciona muy bien comparado con BSD FFS • En Linux es asombrosamente rápido • Síncrono = Malo • RPC’s tardan mucho • Los cambios de contexto del controlador de caché son lentos • Las escrituras a disco tardan mucho
Conclusiones (II) • Intermezzo intenta: • Explotar los sistemas de ficheros • Da autonomia al núcleo • Realiza caché de postescritura
Bibliografía • Linux virtual file System • Braam <braam@cs.cmu.edu> • http://www.coda.cs.cmu.edu • Intermezzo • Http://www.inter-mezzo.org