Open Network Computing ( ONC ) Remote Procedure Call ( RPC ), широко известный как Sun RPC , — это система удаленного вызова процедур . ONC изначально была разработана Sun Microsystems в 1980-х годах как часть их проекта Network File System .
ONC основан на соглашениях о вызовах, используемых в Unix и языке программирования C. Он сериализует данные с помощью внешнего представления данных (XDR), которое также нашло применение для кодирования и декодирования данных в файлах, к которым должен быть доступ на нескольких платформах. Затем ONC доставляет полезную нагрузку XDR с помощью UDP или TCP . Доступ к службам RPC на машине предоставляется через порт-картограф , который прослушивает запросы на известном порту (номер 111) по UDP и TCP.
ONC RPC версии 2 впервые описана в RFC 1050 [1], опубликованном в апреле 1988 года. В июне 1988 года она была обновлена RFC 1057. Позже она была обновлена RFC 1831, опубликованным в августе 1995 года. RFC 5531, опубликованный в мае 2009 года, является текущей версией. Все эти документы описывают только версию 2, а версия 1 не была охвачена ни одним документом RFC. Механизмы аутентификации, используемые ONC RPC, описаны в RFC 2695, RFC 2203 и RFC 2623.
Реализации ONC RPC существуют в большинстве Unix-подобных систем. Microsoft предоставила реализацию для Windows в своем (ныне прекращенном) продукте Microsoft Windows Services for UNIX ; кроме того, существует ряд сторонних реализаций ONC RPC для Windows, включая версии для C / C++ , Java и .NET (см. внешние ссылки).
В 2009 году Sun повторно лицензировала код ONC RPC в соответствии со стандартной лицензией BSD из 3 пунктов [2], а затем в 2010 году корпорация Oracle повторно подтвердила это после возникновения путаницы относительно объема повторного лицензирования. [3]
rpcvers должен быть равен 2
{{cite web}}
: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )