From caller to callee, the information can be transported in parameters and can come back in the procedure result. No any message passing or input/output at all is visible to the computer programmer.
The above technique is also called as remote procedure call (RPC).
Remote procedure call has become the basis of large amount of multicomputer software.
Here, traditionally the calling procedure and the called procedure is known as the client and the server.
The basic idea behind the remote procedure call is to make it look like a local one.
To call a remote procedure, the client program must be bound with a small library procedure also called as client stub, that represents the server procedure in address space of client.
And similarly, the server is bound with a procedure called the server stub.
These procedures hide the fact that the procedure call from client to server isn't local.