Sun RPC - Sun RPC

A Chamada de Procedimento Remoto ( RPC ) Open Network Computing ( ONC ) , comumente conhecida como Sun RPC, é um sistema de chamada de procedimento remoto . ONC foi originalmente desenvolvido pela Sun Microsystems na década de 1980 como parte de seu projeto Network File System .

ONC é baseado em convenções de chamada usadas em Unix ea linguagem de programação C . Ele serializa os dados usando a Representação de Dados Externos (XDR), que também encontrou algum uso para codificar e decodificar dados em arquivos que devem ser acessados ​​em mais de uma plataforma. O ONC então entrega a carga útil do XDR usando UDP ou TCP . O acesso aos serviços RPC em uma máquina é fornecido por meio de um mapeador de porta que escuta as consultas em uma porta conhecida (número 111) sobre UDP e TCP.

ONC RPC foi descrito em RFC 1831, publicado em 1995. RFC 5531, publicado em 2009, é a versão atual. Os mecanismos de autenticação usados ​​pelo ONC RPC são descritos em RFC 2695, RFC 2203 e RFC 2623.

Implementações de ONC RPC existem na maioria dos sistemas do tipo Unix. A Microsoft fornece uma implementação para Windows em seu produto Microsoft Windows Services para UNIX ; além disso, existem várias implementações de terceiros do ONC RPC para Windows, incluindo versões para C / C ++ , Java e .NET (consulte os links externos).

Em 2009, a Sun relicenenciou o código ONC RPC sob a licença BSD padrão de 3 cláusulas e, em seguida, reconfirmou pela Oracle Corporation em 2010 após confusão sobre o escopo do relicenciamento.

ONC é considerado "enxuto e médio", mas tem apelo limitado como um sistema RPC generalizado para WANs ou ambientes heterogêneos. Sistemas como DCE , CORBA e SOAP são geralmente usados ​​nesta função mais ampla.

Veja também

  • XDR - A gramática definida na RFC 1831 é uma pequena extensão da gramática XDR definida na RFC 4506
  • DCE
  • XML-RPC

Referências

  • Birrell, AD; Nelson, BJ (1984). “Implementação de chamadas de procedimento remoto”. Transações ACM em sistemas de computador . 2 : 39–59. doi : 10.1145 / 2080.357392 . S2CID  11525846 .

Notas

links externos