Protocolo de llamada a procedimiento remoto

NFS se implementa en una gran variedad de tipos de máquina, sistemas operativos y arquitecturas de red. NFS logra esta independencia utilizando el protocolo de RPC (Remote Procedure Call - Llamada a procedimiento remoto).

RPC es una biblioteca de procedimientos. Los procedimientos permiten que un proceso (el proceso de cliente) indique a otro proceso (el proceso de servidor) que ejecute llamadas de procedimiento como si el proceso de cliente hubiera ejecutado las llamadas en su propio espacio de direcciones. Dado que el cliente y el servidor son dos procesos independientes, no es necesario que estén en el mismo sistema físico (aunque pueden estar).

NFS se implementa como un conjunto de llamadas RPC en las que el servidor atiende determinados tipos de llamadas realizadas por el cliente. El cliente realiza dichas llamadas basándose en las operaciones de sistema de archivos realizadas por el proceso de cliente. En este sentido, NFS es una aplicación RPC.

Dado que los procesos de servidor y de cliente pueden residir en dos sistemas físicos diferentes que pueden tener arquitecturas completamente diferentes, RPC debe encargarse de la posibilidad de que los dos sistemas pueden no representar los datos del mismo modo. Por esta razón, RPC utiliza tipos de datos definidos por el protocolo eXternal Data Representation (XDR).