What processes happen when a client calls a RPC method or function?
- Create a message buffer (contigious array of bytes of some size).
- Pack the needed information into the message buffer. The information includes identifier of called function and function arguments. This process often called as message serialization or marshaling the argument.
- Wait for the reply, because the function calls are usually synchronous, the call will wait for its completion.
- Unpack return code and other arguments. This unpacking process often called as unmarshaling or deserialization.
- Return to the caller and the caller can continue for more processing.
- Birrell, A. D.; Nelson, B. J. (1984). "Implementing remote procedure calls". ACM Transactions on Computer Systems 2: 39. doi:10.1145/2080.357392
- Arpaci-Dusseau, Remzi H.; Arpaci-Dusseau, Andrea C. (2014), Introduction to Distributed Systems