RPC
A Remote Procedure Call is a programming interface that allows one program to
use the services of another program on a remote machine. The calling program
sends a message and data to the remote program, which is then executed, and
results are passed to the calling program. This type of interface allows programs to
communicate with each another while freeing the programmer from the low-level
details.
An RPC server consists of a collection of procedures that a client may call by
sending an RPC request to the server, along with the procedure parameters. The
server will invoke the indicated procedure on behalf of the client, handing
back the return value, if there is any. In order to be machine-independent, all
data exchanged between client and server is converted to a so-called External Data Representation format (XDR) by the sender, and converted back to the machine-local representation by the
receiver.
RPC was developed by Sun Microsystems, Inc. Important applications built on top of RPC are NFS, the Network File System, and NIS, the Network Information System.