Modelo de RPC
O modelo de chamada de procedimento remoto (RPC) é semelhante a um modelo de chamada de procedimento local. No modelo local, o ouvinte coloca argumentos para um procedimento em um local especificado como um registro de resultados.
Em seguida, o ouvinte transfere o controle para o procedimento. O ouvinte acaba por reger o controle, extrai os resultados do procedimento e continua a execução.
A RPC funciona de maneira semelhante, naquele um fio de ventos de controle logicamente através de dois processos: o processo de caller e o processo do servidor. Primeiramente, o processo do caller envia uma mensagem de chamada que inclui os parâmetros de procedimento para o processo do servidor. Em seguida, o processo do caller aguarda por uma mensagem de resposta (blocos). Em seguida, um processo no lado do servidor, que fica adormecida até a chegada da mensagem de chamada, extrai os parâmetros de procedimento, computa os resultados e envia uma mensagem de resposta. O servidor aguarda a próxima mensagem de chamada. Por fim, um processo no ouvinte recebe a mensagem de resposta, extrai os resultados do procedimento e o caldo retoma a execução.
A Figura do Fluxo de Chamada de Procedimento Remoto (Figura 1) ilustra o paradigma de RPC.

No modelo RPC, apenas um dos dois processos é ativo em qualquer momento. Além disso, este modelo é apenas um exemplo. O protocolo RPC não faz restrições quanto ao modelo de simultaneidade implementado, e outros são possíveis. Por exemplo, uma implementação pode escolher Chamadas de Procedimento Remoto assíncronas para que o cliente possa continuar trabalhando enquanto aguarda uma resposta do servidor. Adicionalmente, o servidor pode criar uma tarefa para processar solicitações recebidas e, assim, manter-se livre para receber outros pedidos.