Sistema de archivos de red


Network File System ( NFS ) es un protocolo de sistema de archivos distribuido desarrollado originalmente por Sun Microsystems (Sun) en 1984, [1] que permite a un usuario de una computadora cliente acceder a archivos a través de una red informática de forma muy similar a como se accede al almacenamiento local. NFS, como muchos otros protocolos, se basa en el sistema de llamada a procedimiento remoto de computación en red abierta (ONC RPC). NFS es un estándar IETF abierto definido en una Solicitud de comentarios (RFC), que permite a cualquiera implementar el protocolo.

Sun utilizó la versión 1 solo con fines experimentales internos. Cuando el equipo de desarrollo agregó cambios sustanciales a la versión 1 de NFS y la lanzó fuera de Sun, decidieron lanzar la nueva versión como v2, de modo que se pudiera probar la interoperación de versiones y la versión alternativa de RPC. [2] [3]

La versión 2 del protocolo (definido en RFC 1094, marzo de 1989) originalmente operaba solo sobre el Protocolo de datagramas de usuario (UDP). Sus diseñadores pretendían mantener el lado del servidor sin estado , con bloqueo (por ejemplo) implementado fuera del protocolo central. Las personas involucradas en la creación de la versión 2 de NFS incluyen a Russel Sandberg , Bob Lyon , Bill Joy , Steve Kleiman y otros. [1] [4]

La interfaz del Sistema de Archivos Virtual permite una implementación modular, reflejada en un protocolo simple. En febrero de 1986, se demostraron implementaciones para sistemas operativos como System V versión 2, DOS y VAX / VMS usando Eunice . [4] NFSv2 solo permite leer los primeros 2 GB de un archivo debido a las limitaciones de 32 bits .

La primera propuesta de la versión 3 de NFS dentro de Sun Microsystems se creó poco después del lanzamiento de la versión 2 de NFS. La motivación principal fue un intento de mitigar el problema de rendimiento de la operación de escritura síncrona en la versión 2 de NFS. [6] Para julio de 1992, la implementación La práctica había resuelto muchas deficiencias de la versión 2 de NFS, dejando solo la falta de compatibilidad con archivos grandes (tamaños y compensaciones de archivos de 64 bits) como un problema urgente. Esto se convirtió en un problema agudo para Digital Equipment Corporation con la introducción de una versión de 64 bits de Ultrix para admitir su procesador RISC de 64 bits recientemente lanzado , el Alpha 21064 . En el momento de la introducción de la Versión 3, el soporte del proveedor para TCP comoEl protocolo de la capa de transporte comenzó a aumentar. Si bien varios proveedores ya habían agregado soporte para NFS Versión 2 con TCP como transporte, Sun Microsystems agregó soporte para TCP como transporte para NFS al mismo tiempo que agregó soporte para la Versión 3. Usando TCP como un transporte realizado usando NFS sobre una WAN más factible y permitió el uso de tamaños de transferencia de lectura y escritura más grandes más allá del límite de 8 KB impuesto por el Protocolo de datagramas de usuario .

La versión 4 (RFC 3010, diciembre de 2000; revisada en RFC 3530, abril de 2003 y nuevamente en RFC 7530, marzo de 2015), influenciada por Andrew File System (AFS) y Server Message Block (SMB, también denominado CIFS), incluye mejoras de rendimiento, exige una seguridad sólida e introduce un protocolo con estado . [7] La versión 4 se convirtió en la primera versión desarrollada con el Grupo de trabajo de ingeniería de Internet (IETF) después de que Sun Microsystems entregó el desarrollo de los protocolos NFS.


Comparación de rendimiento de NFS SPECsfs2008, a 22 de noviembre de 2013