Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Microsoft RPC (Microsoft Remote Procedure Call) является модифицированной версией DCE/RPC. Дополнения включают частичную поддержку строк UCS-2 (но не Unicode), неявные дескрипторы и сложные вычисления в парадигмах строк переменной длины и структур, уже присутствующих в DCE/RPC.
Microsoft RPC (Microsoft Remote Procedure Call) is a modified version of DCE/RPC. Additions include partial support for UCS 2 (but not Unicode) strings, implicit handles, and complex calculations in the variable length string and structure paradigms already present in DCE/RPC.
Пример
Референтная реализация DCE 1.0 допускает только такие конструкции, как , или, возможно, MSRPC допускает гораздо более сложные конструкции, такие как и даже , что часто встречается в файлах DCOM IDL.
The DCE 1.0 reference implementation only allows such constructs as , or possibly MSRPC allows much more complex constructs such as and even , a common expression in DCOM IDL files.
Использование
MSRPC использовался Microsoft для бесшовного создания клиент-серверной модели в Windows NT, требуя минимальных усилий. Например, протоколы доменов Windows Server полностью построены на основе MSRPC, как и административный инструмент DNS от Microsoft. Все административные интерфейсы Microsoft Exchange Server 5.5 являются MSRPC клиент-серверными приложениями, а безопасность его MAPI была повышена за счет "проксирования" MAPI через набор простых функций MSRPC, обеспечивающих шифрование на уровне MSRPC без участия протокола MAPI.
MSRPC was used by Microsoft to seamlessly create a client/server model in Windows NT, with very little effort. For example, the Windows Server domains protocols are entirely MSRPC based, as is Microsoft's DNS administrative tool. Microsoft Exchange Server 5.5's administrative front ends are all MSRPC client/server applications, and its MAPI was made more secure by "proxying" MAPI over a set of simple MSRPC functions that enable encryption at the MSRPC layer without involving the MAPI protocol.
История
MSRPC берет свое начало из эталонной реализации распределенной вычислительной среды 1.2, разработанной Фондом открытого программного обеспечения, но авторские права на нее принадлежат Microsoft. DCE/RPC изначально был разработан по заказу Фонда открытого программного обеспечения – отраслевого консорциума, задачей которого было создание открытых стандартов для вычислительной инфраструктуры, независимых от поставщиков и технологий. Ни один из поставщиков Unix (сейчас представленных Open Group) не хотел использовать сложный DCE или такие компоненты, как DCE/RPC, в то время. Компонентная объектная модель Microsoft в значительной степени основана на MSRPC, с добавлением интерфейсов и наследования. Семантика сериализации DCE/RPC используется для преобразования вызовов методов и результатов между процессами с разными адресными пространствами, хотя изначально COM не поддерживал сетевые вызовы между разными машинами. С появлением распределенной компонентной объектной модели (DCOM) COM был расширен для поддержки программных компонентов, распределенных по нескольким компьютерам в сети. DCOM, первоначально называвшийся "Network OLE", является расширением COM от Microsoft и обеспечивает базовый уровень связи для инфраструктуры сервера приложений COM+ от Microsoft.
MSRPC is derived from the Distributed Computing Environment 1.2 reference implementation from the Open Software Foundation, but has been copyrighted by Microsoft. DCE/RPC was originally commissioned by the Open Software Foundation, an industry consortium to set vendor and technology neutral open standards for computing infrastructure. None of the Unix vendors (now represented by the Open Group), wanted to use the complex DCE or such components as DCE/RPC at the time. Microsoft's Component Object Model is based heavily on MSRPC, adding interfaces and inheritance. The marshalling semantics of DCE/RPC are used to serialize method calls and results between processes with separate address spaces, albeit COM did not initially allow network calls between different machines. With Distributed Component Object Model (DCOM), COM was extended to software components distributed across several networked computers. DCOM, which originally was called "Network OLE", extends Microsoft's COM, and provides the communication substrate under Microsoft's COM+ application server infrastructure.