ONC RPC

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

RPC основан на соглашении о вызове, используемом в Unix и языке программирования Си — cdecl. Он сериализует данные при помощи 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]

См. также

  • XDR
  • DCE
  • XML RPC

Примечания

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

Ссылки

  • Ed Petron. «Remote Procedure Calls» (англ.). LinuxJournal (1 октября 1997). Дата обращения: 21 февраля 2011. Архивировано из оригинала 22 февраля 2012 года.
  • Различные реализации:
    • ONC/RPC für Windows NT/95 (нем.). RWTH Aachen University. Дата обращения: 21 февраля 2010. Архивировано из оригинала 22 февраля 2012 года.
    • Remote Tea (LGPL Java Implementation) (англ.). Дата обращения: 21 февраля 2011. Архивировано из оригинала 22 февраля 2012 года.
    • Remote Tea .Net (LGPL C# Implementation) (англ.). Дата обращения: 21 февраля 2011. Архивировано из оригинала 22 февраля 2012 года.
    • Distinct Corporation’s ONC RPC for Windows (англ.). Дата обращения: 21 февраля 2011. Архивировано из оригинала 22 февраля 2012 года.
    • ООО "Открытые технологии виртуализации" (RU), Реализация протокола RPC версии 2 (RFC 1057, RPC: Remote Procedure Call Protocol Specification)
Перейти к шаблону «Стек ONC»
Стек протоколов ONC
  • Sun RPC
  • XDR
  • NIS (YP)
  • NFS
Перейти к шаблону «Sun Microsystems»
Sun Microsystems (поглощена Oracle)
Оборудование
Программное обеспечение
Хранение данных
High-Performance Computing
Исследования
Обучение
Сообщество