next up previous
Siguiente: Cambios que hemos hecho Superior: Mejorando NFS Anterior: Introducción

Introducción básica a NFS

NFS [#!nfs:637!#] significa ``Network File System'' y fue creado por SUN para dar acceso remoto transparente a ficheros compartidos a través de redes. En realidad no es más que una forma de dar acceso a través del sistema de ficheros a ficheros remotos. En la terminología de NFS, cuando se da acceso a un árbol de ficheros para que otros ordenadores puedan acceder a él a través de la red, se dice que esta jerarquía se ha exportado.

Para su funcionamiento, NFS utiliza un sistema para llamar a funciones a través de la red de forma más o menos transparente llamado RPC, desarrollado por SUN. RPC se basa a su vez en XDR, un sistema de descripción de tipos de datos que permite hacer las RPCs independientes de la arquitectura y plataforma. De esta forma, NFS logra ser independiente de la arquitectura y de la plataforma, cumpliendo así el primero de sus parámetros de diseño.

El segundo objetivo de diseño, que es conseguir que se recupere frente a caídas del servidor, lo logra haciendo éste sin estado y las operaciones idempotentes en la medida de lo posible1. Aunque no todas las operaciones pueden ser idempotentes, se intenta que lo sean en la medida de lo posible, por ejemplo, una cache de operaciones recientes. Read y write son idempotentes, así que copy también lo es por haber sido diseñada de forma parecida (enviando la posición u offset del fichero origen y destino) y además, al no ser más que la suma de read y write, dos operaciones idempotentes, a la fuerza tiene que ser idempotente si está bien implementada.



Notas al pie

... posible1
Una operación idempotente es aquella en la que la repetición de la operación es exactamente igual a la operación realizada una sola vez.

next up previous
Siguiente: Cambios que hemos hecho Superior: Mejorando NFS Anterior: Introducción

Download this document: [src.tar.gz][ps.gz][html.tar.gz][dvi.gz]

Congreso HispaLinux 2000