RPC(Remote Procedure Call), ou Chamada de procedimento remoto, é um protocolo de comunicação de software que um programa pode usar para solicitar um serviço de um programa localizado em outro computador em uma rede sem ter que entender os detalhes da rede. O RPC é usado para chamar outros processos nos sistemas remotos, como se fosse um sistema local. Uma chamada de procedimento(procedure call) também é conhecida como uma chamada de função ou uma chamada de sub-rotina( function call or a subroutine call).
O RPC usa o modelo cliente-servidor . O programa solicitante é um cliente e o programa provedor dos serviços é o servidor. Como uma chamada de procedimento local, um RPC é uma operação síncrona que exige que o programa solicitante seja suspenso até que os resultados do procedimento remoto sejam retornados. No entanto, o uso de processos leves ou threads que compartilham o mesmo espaço de endereço permite que vários RPCs sejam executados simultaneamente.