ONC RPC
ONC Remote Procedure Call (ONC RPC) | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Familia | Protocolo de RPC | |||||||||||
Función | Llamada a procedimiento remoto | |||||||||||
Puertos | 111/portmap , otros según la aplicación | |||||||||||
Ubicación en la pila de protocolos* | ||||||||||||
| ||||||||||||
* según el Modelo OSI | ||||||||||||
Estándares | ||||||||||||
RFC 1831 (v2 1995) | ||||||||||||
ONC RPC, abreviación del inglés Open Network Computing Remote Procedure Call, es un protocolo de llamada a procedimiento remoto (RPC) desarrollado por el grupo ONC de Sun Microsystems como parte del proyecto de su sistema de archivos de Red NFS, algunas veces se lo denomina Sun ONC o Sun RPC. Trabaja sobre los protocolos TCP y UDP. La codificación de datos se realiza utilizando el protocolo XDR (presentación de datos).
ONC RPC está regulado por RFC 1831. Los mecanismos de autenticación usados por ONC RPC están descritos en RFC 2695, RFC 2203, y RFC 2623.
Desarrollo de aplicaciones: compiladores de protocolo
[editar]El desarrollo de aplicaciones para ONC RPC consisten en desarrollar programas cliente/servidor, donde los datos deben codificarse según el protocolo XDR.
Las aplicaciones se realizan en forma sistemática mediante compiladores de protocolo como el programa rpcgen, que fue el programa original desarrollado por Sun que generaba casi todo el código en lenguaje C necesario para crear los programas servidor y cliente. Existen compiladores de este protocolo que generan código en Java, denominados jrpcgen.
Implementaciones
[editar]Las implementaciones de ONC RPC existen para la mayoría de los sistemas como Unix (OpenVMS Alpha ,OpenVMS I64,[1] etc.) y Linux (en el subdirectorio sunrpc de la biblioteca Glibc).
Las tecnologías que involucran a ONC RPC (incluyendo NFS y NIS) desarrollada por Sun para su sistema operativo Solaris, en sus versiones más recientes se denominan tecnologías ONC+.[2]
La Free Software Foundation está desarrollando una implementación GNU de este protocolo, denominado GNU Guile-RPC,[3] como parte del desarrollo del lenguaje de programación GNU Guile.
Microsoft provee una implementación para su Windows en el producto "Microsoft Windows Services for UNIX" ; además , existen otras implementaciones de ONC RPC para Windows, incluyendo versiones en lenguaje C/C++, Java, y Microsoft .NET.
Referencias
[editar]- ↑ Hewlett-Packard Company (January 2005) ONC RPC Programming Archivado el 21 de diciembre de 2005 en Wayback Machine.. HP TCP/IP Services for OpenVMS. (en inglés)
- ↑ Sun Microsystems, Inc. (May 2002) ONC+ Deveoper's Guide Archivado el 29 de abril de 2003 en Wayback Machine. (en inglés)
- ↑ Free Software Foundation (2007) GNU Guile-RPC (en inglés)
Véase también
[editar]Enlaces externos
[editar]- Código de ONC RPC de libc (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última). (en inglés)
- Implementación de ONC RPC para Windows de la Universidad de Aquisgrán (Alemania) (en inglés y alemán)
- Remote Tea (Implementación Java con licencia LGPL) (en inglés)