분산 컴포넌트 객체 모델

Distributed Component Object Model

DCOM(Distributed Component Object Model)은 네트워크로 연결된 컴퓨터 상의 소프트웨어 컴포넌트 간의 통신을 위한 마이크로소프트만의 기술입니다.DCOM은 원래 "네트워크 OLE"로 불리며 마이크로소프트의 COM을 확장하고 마이크로소프트의 COM+ 응용 프로그램 서버 인프라에서 통신 기판을 제공합니다.

Distributed COM으로의 확장 COM은 DCE/RPC(Distributed Computing Environment/Remote Procedure Calls)가 광범위하게 사용되었기 때문입니다.구체적으로는 MSRPC로 알려진 Microsoft의 확장 버전입니다.[1]

DCOM은 COM에 추가된 확장 기능에 관해 다음과 같은 문제를 해결해야 했습니다.

  • 마샬링 – 메서드 호출의 인수 및 반환 값을 "전송을 통해" 시리얼화 및 역직렬화합니다.
  • 분산 가비지 컬렉션: 클라이언트프로세스가 크래시하거나 네트워크 접속이 끊겼을 때 인터페이스의 클라이언트가 보유하고 있는 참조가 해방됩니다.
  • 대역폭 사용률을 최소화하기 위해 클라이언트 브라우저 내의 상당한 수의 개체를 단일 전송으로 결합합니다.

이러한 문제를 해결하기 위한 중요한 요인 중 하나는 DCOM의 배후에 있는 RPC 메커니즘으로서 DCE/RPC를 사용하는 것입니다.DCE/RPC는, 마샬링에 관한 룰과 메모리 [2]해방 담당자를 엄밀하게 정의하고 있습니다.

DCOM은 CORBA의 [3]주요 경쟁사였다.이 두 기술의 지지자들은 언젠가 인터넷을 통한 코드와 서비스 재사용의 모델이 될 것으로 보았다.단, 이러한 테크놀로지를 인터넷방화벽 및 불분명한 보안되지 않은 머신 상에서 동작시키는 것은 어려운 일이기 때문에 웹 브라우저와 조합한 일반 HTTP 요구가 [4]양쪽에서 모두 성공하는 것을 의미합니다.Microsoft는 한때 DCE/RPC에 ncacn_http(Network Computing Architecture connection-oriented protocol)[5]라는 추가 http 트랜스포트를 추가하여 이러한 단점을 수정하려고 시도했습니다.

DCOM은 1996년 [6]9월 18일 Windows 95의 베타판으로 공개되었습니다.

DCOM은 Windows 95 이후의 모든 Windows 버전과 Windows NT 4.0 이후의[7] 모든 Windows Server 버전에서 기본적으로 지원됩니다.

보안 강화

시큐어 개발 라이프 사이클의 일환으로서 Microsoft에서 개시한 시큐어 개발 라이프 사이클의 일환으로서 DCOM은, Windows XP Service Pack [8]2 에 있어서의 시큐러티에 중점을 둔 중요한 변경을 몇개인가 확인했습니다.

2021년 [9]6월 Tencent Security Xuanwu Lab에 의해 보고된 보안 취약성에 대응하여 마이크로소프트는 여러 버전의 Windows 및 Windows Server에 대한 보안 업데이트를 발표하여 DCOM에 [10]대한 액세스를 강화했습니다.

대체 버전 및 구현

COMSource는 Unix 기반의 DCOM 구현으로 서로 다른 플랫폼 간의 상호 운용성을 가능하게 합니다.이 소스코드는 완전하고 완전한 문서와 함께 이용 가능하며 DCOM의 상호 운용 가능한 버전도 실장할 수 있습니다.COM 소스코드는 Windows NT 4.0 소스 코드에서 직접 제공되며 Windows NT 레지스트리 서비스용 소스 코드를 포함합니다.[11]

1995년, Digital과 Microsoft는 OpenVMS의 어피니티(NT 어피니티라고도 함)를 발표했습니다.이 어피니티는 OpenVMS가 Windows NT 클라이언트 서버 애플리케이션의 [12]퍼시스텐스 레이어로서 기능하는 것을 목적으로 하고 있습니다.이 이니셔티브의 일환으로 OpenVMS [13]Alpha에 DCOM(Distributed Component Object Model) 구현이 추가되었습니다.DCOM을 지원하기 위해 VMS에는 Windows 레지스트리, NTLM 인증 및 [14]COM 지원에 필요한 Win32 API의 서브셋이 제공되었습니다.DCOM은 처음에 [15]Alpha용 OpenVMS V7.2-1에 추가되었습니다.이와 유사한 DCOM 구현이 AllConnect [13]프로그램의 일부로 Digital Unix에 추가되었습니다.

탕람콤은 와인과는 별개 [16]프로젝트로 리눅스 기반 스마트폰에 DCOM을 구현하는 데 초점을 맞췄다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "What is Distributed Component Object Model (DCOM)?". WhatIs.com. Retrieved 2022-08-03.
  2. ^ "DCE 1.1: Remote Procedure Call - Introduction to the RPC API". pubs.opengroup.org. Retrieved 2022-08-03.
  3. ^ Nowak, Filip; Qasim, Mohsin. "A Comparison of Distributed Object Technologies CORBA vs DCOM" (PDF). {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  4. ^ "Object Technology Jeff Sutherland: Web Services: Better than CORBA or DCOM?". Retrieved 2022-08-03.
  5. ^ stevewhims. "Remote Procedure Calls Using RPC over HTTP - Win32 apps". docs.microsoft.com. Retrieved 2022-08-03.
  6. ^ 프레스 릴리즈 발표 DCOM 베타판
  7. ^ "Distributed Component Object Model (DCOM) Remote Protocol" (PDF). Microsoft - Distributed Component Object Model (DCOM) Remote Protocol. June 25, 2021. Retrieved August 3, 2022.{{cite web}}: CS1 maint :url-status (링크)
  8. ^ DCOM 보안 확장
  9. ^ "Security Update Guide - Microsoft Security Response Center". msrc.microsoft.com. Retrieved 2022-08-03.
  10. ^ "KB5004442—Manage changes for Windows DCOM Server Security Feature Bypass (CVE-2021-26414)". support.microsoft.com. Retrieved 2022-08-03.
  11. ^ "DataSheet COMsource for Solaris, Tru64 UNIX and other Platforms". DataSheet COMsource for Solaris, Tru64 UNIX and other Platforms.{{cite web}}: CS1 maint :url-status (링크)
  12. ^ "OpenVMS at 20 Nothing stops it" (PDF). Digital. October 1997. Retrieved 2021-02-12.
  13. ^ a b Gene Cronin, Terence P. Sherlock (2000). COM Beyond Microsoft: Designing and Implementing COM Servers on Compaq Platforms. ISBN 1555582265.
  14. ^ "OpenVMS Connectivity Developer Guide". hpe.com. July 2000. Retrieved 2021-01-01.
  15. ^ "OpenVMS Alpha V7.2-1 Release Notes". odl.sysworks.biz. January 1999. Retrieved 2021-01-01.
  16. ^ "Home - TangramCOM". www.andjoin.com. Retrieved 2022-08-03.

외부 링크