Remote Procedure Call

A remote procedure is when a computer executes a Subroutine on a different device on the Network. Basically it allows processes to execute programs on different devices without specifically implementing it. So the code written for a local Subroutine or a remote Subroutine is essentially the same. The programmed doesn’t have to explicitly code for a remote interaction. It is still common practice to not make them identatical so that local calls can be diffirentiated from remote calls since remote calls are much slower.

RPC is typically implemented with a request-response system like one of the most common implementations MSRPC which allows developers of Win32 apps to execute functions on other devices for example over SMB. There is also RPC which was commissioned by the Open Software Foundation. It was actually the base on which MSRPC was built.