or Call +44 207 183 0826

Open Network Computing (ONC) Remote Procedure Call (RPC) is a widely deployed remote procedure call system. A remote procedure call (RPC) is client/server system in which a computer program causes a subroutine or procedure to execute in another address space (commonly on another computer on a shared network) without the programmer explicitly coding the details for this remote interaction. In other words, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote.

ONC is based on calling conventions used in Unix and the C programming language. It serializes data using the External Data Representation (XDR), which has also found some use to encode and decode data in files that are to be accessed on more than one platform. ONC then delivers the XDR payload using either UDP or TCP.

Implementations of ONC RPC exist in most Unix-like systems. Microsoft supplies an implementation for Windows in their Microsoft Windows Services for UNIX product; in addition, a number of third-party implementation of ONC RPC for Windows exist, including versions for C/C++, Java, and .NET. ONC is considered “lean and mean”, but has limited appeal as a generalized RPC system for WANs or heterogeneous environments.