Remote Procedure Calls (RPCs) allow a process to cause a procedure to execute in another address space, either locally or remotely. The client stub packs parameters into a message and sends it to the server stub, which unpacks the parameters and calls the server procedure. The server stub then packs the result into a message back to the client stub. RPCs hide the details of message passing between client and server stubs to make the remote procedure call appear local to the client.