Sonne-RPC - Sun RPC

Open Network Computing ( ONC ) Remote Procedure Call ( RPC ), allgemein bekannt als Sun RPC ist ein Remote Procedure Call System. ONC wurde ursprünglich in den 1980er Jahren von Sun Microsystems als Teil ihres Network File System- Projekts entwickelt.

ONC basiert auf Aufrufkonventionen, die in Unix und der Programmiersprache C verwendet werden . Es serialisiert Daten mithilfe der External Data Representation (XDR), die auch zum Kodieren und Dekodieren von Daten in Dateien verwendet wird, auf die auf mehr als einer Plattform zugegriffen werden soll. ONC liefert dann die XDR-Nutzlast entweder über UDP oder TCP . Der Zugriff auf RPC-Dienste auf einer Maschine erfolgt über einen Port-Mapper , der über UDP und TCP auf Anfragen an einem bekannten Port (Nummer 111) lauscht .

ONC RPC wurde in RFC 1831, veröffentlicht 1995, beschrieben. RFC 5531, veröffentlicht 2009, ist die aktuelle Version. Die von ONC RPC verwendeten Authentifizierungsmechanismen sind in RFC 2695, RFC 2203 und RFC 2623 beschrieben.

Implementierungen von ONC RPC existieren in den meisten Unix-ähnlichen Systemen. Microsoft stellt eine Implementierung für Windows in ihrem Microsoft Windows Services for UNIX- Produkt bereit ; Darüber hinaus gibt es eine Reihe von Drittanbieter-Implementierungen von ONC RPC für Windows, einschließlich Versionen für C / C++ , Java und .NET (siehe externe Links).

Im Jahr 2009 Sun neu lizenziert den ONC RPC Code unter der Standard - 3-clause BSD - Lizenz und dann durch erneut bestätigt Oracle Corporation im Jahr 2010 folgende Verwirrung über den Umfang der Relizenzierung.

ONC gilt als „schlank und gemein“, ist aber als generalisiertes RPC-System für WANs oder heterogene Umgebungen nur begrenzt attraktiv . Systeme wie DCE , CORBA und SOAP werden im Allgemeinen in dieser breiteren Rolle verwendet.

Siehe auch

  • XDR - Die in RFC 1831 definierte Grammatik ist eine kleine Erweiterung der in RFC 4506 definierten XDR-Grammatik
  • DCE
  • XML-RPC

Verweise

  • Birrell, AD; Nelson, BJ (1984). "Remote-Prozeduraufrufe implementieren". ACM-Transaktionen auf Computersystemen . 2 : 39–59. doi : 10.1145/2080.357392 . S2CID  11525846 .

Anmerkungen

Externe Links