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.

См. также