Microsoft RPC

Microsoft RPC

Microsoft RPC(Microsoft Remote Procedure Call)는 DCE/RPC의 수정 버전입니다.추가 기능에는 UCS-2(Unicode 이외) 문자열의 부분 지원, 암묵적인 핸들, DCE/RPC에 이미 존재하는 가변 길이 문자열 및 구조 패러다임의 복잡한 계산이 포함됩니다.

DCE 1.0 레퍼런스 구현에서는 다음과 같은 구성만 허용됩니다.size_is(len)또는 가능한 경우size_is(len-1)MSRPC는 다음과 같은 훨씬 더 복잡한 구조를 가능하게 합니다.size_is(len / 2 - 1)그리고 심지어length_is ((max & ~0x7) + 0x7)DCOM IDL 파일의 일반적인 표현입니다.

사용하다

MSRPC는 Windows NT에서 클라이언트/서버 모델을 심리스하게 작성하기 위해 마이크로소프트에 의해 매우 적은 노력으로 사용되었습니다.를 들어 윈도우즈 서버 도메인 프로토콜은 마이크로소프트의 DNS 관리 도구와 마찬가지로 완전히 MSRPC 기반입니다.Microsoft Exchange Server 5.5의 관리 프런트 엔드는 모두 MSRPC 클라이언트/서버 애플리케이션이며, MAPI는 MAPI 프로토콜을 사용하지 않고 MSRPC 계층에서 암호화를 가능하게 하는 일련의 단순한 MSRPC 함수에서 MAPI를 "프록시"함으로써 더욱 안전해졌습니다.

역사

MSRPC는 Open Software Foundation의 Distributed Computing Environment 1.2 레퍼런스 구현에서 파생되었지만 Microsoft에 의해 저작권이 부여되어 있습니다.DCE/RPC는 당초 벤더와 테크놀로지에 의존하지 않는 컴퓨팅 인프라스트럭처의 오픈 스탠다드를 설정하기 위한 업계 컨소시엄인 Open Software Foundation의 의뢰를 받았습니다.Unix 벤더(현재는 Open Group으로 표시됨) 중 어느 벤더도 복잡한 DCE 또는 DCE/RPC와 같은 컴포넌트를 사용하려고 하지 않았습니다.

Microsoft의 Component Object Model은 주로 MSRPC를 기반으로 인터페이스와 상속을 추가합니다.DCE/RPC의 마샬링 시멘틱스는 별도의 주소 공간을 가진 프로세스 간에 메서드콜과 결과를 시리얼화하기 위해 사용됩니다.단, COM에서는 처음에는 다른 머신 간의 네트워크콜이 허용되지 않았습니다.

Distributed Component Object Model(DCOM; 분산 컴포넌트 오브젝트 모델)을 통해 COM은 네트워크로 연결된 여러 컴퓨터에 배포된 소프트웨어 컴포넌트로 확장되었습니다.DCOM은 원래 "네트워크 OLE"로 불리며 마이크로소프트의 COM을 확장하고 마이크로소프트의 COM+ 응용 프로그램 서버 인프라에서 통신 기판을 제공합니다.마이크로소프트는 더 오픈 그룹에 [citation needed]DCOM을 기부했다.

레퍼런스

  • Shirley, John; Rosenberry, Ward (1995). Microsoft RPC programming guide. O'Reilly & Associates, Inc. Open Book. ISBN 1-56592-070-8.
  • Luke Kenneth Casson Leighton (1999). DCE/RPC over SMB: Samba and Windows NT Domain Internals. Sams. ISBN 1-57870-150-3.

외부 링크