ONC RPC

ONC RPC, сокращение от англ. Open Network Computing Remote Procedure Call — широко используемая система удаленного вызова процедур. Разработана компанией Sun Microsystems как часть проекта сетевой файловой системы (Network File System), и иногда упоминается как Sun ONC или Sun RPC. ONC RPC описан в RFC 1831 (95 года) и RFC 5531 (2009 года). Механизмы аутентификации, используемые ONC RPC описаны в RFC 2695, RFC 2203, и RFC 2623.

RPC основана на соглашениях вызова, используемых в Unix и языке программирования Си. Он сериализует данные при помощи XDR, который также может кодировать и декодировать файлы для поддержки доступа с различных платформ. Затем ONC доставляет данные XDR, используя UDP или TCP. Доступ к сервисам RPC на компьютере предоставляется через отображатель портов (англ. port mapper), который принимает запросы на известном порту, обычно 111, по UDP и TCP.

Реализации ONC RPC существуют в большинстве Unix-подобных систем. Чаще всего они основываются на коде от компании Sun, опубликованном в usenet в 1984 году. Microsoft поставляет реализацию в составе продукта Microsoft Windows Services for UNIX, кроме того существуют иные реализации ONC RPC для ОС Windows, в том числе для C/C++, Java, .NET.

В 2009 году Sun собирался перелицензировать реализацию ONC RPC под 3-условную BSD license[1], что позже было сделано Oracle в 2010 году.[2]

Ссылки

Примечания

  1. Old Code and Old Licenses (неопр.). Sun Microsystems. Дата обращения 20 февраля 2009.
  2. The long, sordid tale of Sun RPC, abbreviated somewhat, to protect the guilty and the irresponsible (неопр.). Tom Callaway, Red Hat. Дата обращения 26 августа 2010.

См. также