Dado que os procedimentos so executados em mquinas diferentes, alguns
aspectos devem ser levados em considerao.
A semntica da passagem de parmetros deve ser adaptada; Parmetros devem ser traduzidos caso as duas mquinas no sejam idnticas; As duas mquinas podem falhar causando problemas tanto o cliente como o servidor, e a rede tambm. Cliente pode no localizar o servidor: problema de hardware ou indisponvel. Perda de mensagem solicitando servio: usando contador de tempo, se deu o tempo e no recebeu a mensagem pode re-transmitir. Perda da mensagem com a resposta: pode ser resolvido com um temporizador, se no conseguir a resposta ele retransmite novamente. Queda do servidor: Num servidor a ordem normal dos eventos receber a
solicitao, executar o procedimento e responder. Assim uma parada no servidor pode
acontecer aps a execuo, ou antes, da execuo do procedimento. Existe a tcnica de chamado de semntica que garante que a chamada remota foi executada apenas uma vez. Queda do cliente: Quando o cliente manda a solicitao e fica indisponvel ou fora do ar para recebe-la. Por valor (fd e nbytes): O parmetro copiado para a pilha. Mudanas em seu valor no afetam quem chamou o procedimento; Por referncia (buf): copiado para a pilha a referncia ao Parmetro, isto , um apontador (endereo de memria) da varivel. Portanto, Alteraes em seu valor no procedimento chamado afeta quem o chamou; Copy/restore: O parmetro copiado para a pilha e depois da chamada copiado de volta, sobrescrevendo o valor original. Normalmente possui a mesma semntica da cpia por referncia exceto em situaes como o mesmo parmetro sendo enviado mais de uma vez.
O mecanismo RPC est integrado com a linguagem de programao que inclui
uma notao para a definio de interfaces. O RPC utiliza uma linguagem de propsito especial IDL com a funo de definir a interface a ser chamada pelo cliente e implementada no servidor. Uma interface definida por IDL compilada para gerar um apndice de cliente e um apndice de servidor e que no est amarrada a nenhum ambiente de linguagem em particular. O IDL especifica aquelas caractersticas do Servidor visveis ao cliente: descrevem os procedimentos do servidor, seus parmetros, tipos e quando so de entrada, sada, ou entrada/sada. Compilador IDL pode gerar os stubs cliente e servidor de forma automtica a partir da especificao formal do servidor. Pode-se concluir ento que o RPC permite a um cliente o acesso a um servio remoto por meio de uma simples chamada a um procedimento local, possibilita que
programas clientes sejam escritos de modo simples, pode localizar automaticamente o
servidor correto e estabelece a comunicao entre software cliente e software servidor.