분산 컴포넌트 오브젝트 모델
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
분산 컴포넌트 오브젝트 모델(DCOM)은 마이크로소프트에서 개발한 기술로, 네트워크 환경에서 소프트웨어 컴포넌트 간의 통신을 가능하게 한다. DCOM은 Common Object Request Broker Architecture(CORBA)와 경쟁했으나, 방화벽 및 보안 문제로 인해 HTTP와 웹 브라우저 조합에 밀려났다. 마이크로소프트는 보안 개발 수명 주기의 일환으로 DCOM의 보안을 강화했으며, 2021년에는 보안 취약점에 대응하여 보안 업데이트를 출시했다. DCOM의 파생 버전으로 COMsource, OpenVMS 및 Digital Unix, TangramCOM, Wine, j-Interop 등이 있다.
더 읽어볼만한 페이지
- 컴포넌트 기반 소프트웨어 공학 - 컴포넌트 오브젝트 모델
컴포넌트 오브젝트 모델(COM)은 마이크로소프트에서 개발한 소프트웨어 컴포넌트 기술로, 서로 다른 애플리케이션이 객체를 통해 통신하고 기능을 공유할 수 있도록 하는 이진 인터페이스 표준을 제공하며, 다양한 프로그래밍 언어로 작성된 객체들의 상호 운용을 지원한다. - 컴포넌트 기반 소프트웨어 공학 - 공통 객체 요구 매개자 구조
공통 객체 요구 매개자 구조(CORBA)는 객체 관리 그룹(OMG)에서 분산 컴퓨팅 환경에서 객체 지향 기술을 통합하기 위해 제정한 표준 아키텍처로서, 객체 요청 브로커(ORB)를 통해 객체 간 통신을 제공하고 다양한 서비스를 지원한다. - 분산 컴퓨팅 - 클라우드 컴퓨팅
클라우드 컴퓨팅은 인터넷을 통해 컴퓨팅 자원을 서비스 형태로 제공하는 모델로, 다양한 서비스 및 배치 모델을 가지며 비용 효율성과 확장성을 제공하지만 보안 및 의존성 문제도 존재하며 지속적으로 발전하고 있다. - 분산 컴퓨팅 - 그리드 컴퓨팅
그리드 컴퓨팅은 지리적으로 분산된 컴퓨터 자원을 연결하여 가상 슈퍼컴퓨터를 구축하는 기술이며, 유휴 자원을 활용하고 과학 연구 등 다양한 분야에 활용된다. - 정보기술 용어 - 그리드 컴퓨팅
그리드 컴퓨팅은 지리적으로 분산된 컴퓨터 자원을 연결하여 가상 슈퍼컴퓨터를 구축하는 기술이며, 유휴 자원을 활용하고 과학 연구 등 다양한 분야에 활용된다. - 정보기술 용어 - 컴퓨터 클러스터
컴퓨터 클러스터는 여러 대의 상용 컴퓨터를 고속 네트워크로 연결하여 고성능 컴퓨팅 시스템을 구축하는 방식으로, 슈퍼컴퓨터를 포함한 다양한 분야에서 높은 가용성과 확장성을 제공하며, 클러스터 미들웨어를 통해 시스템 관리, 부하 분산, 통신 방식, 데이터 공유 등을 지원하고 노드 장애 관리를 위한 펜싱 기술을 활용한다.
분산 컴포넌트 오브젝트 모델 | |
---|---|
개요 | |
종류 | 미들웨어 |
개발 | 마이크로소프트 |
첫 출시 | 1996년 |
안정화 버전 | 1.3 |
운영 체제 | 마이크로소프트 윈도우 |
상세 정보 | |
기반 기술 | 원격 프로시저 호출 (RPC) |
역할 | 소프트웨어 컴포넌트 간 통신 |
대체 기술 | 웹 서비스 CORBA |
2. 역사
2. 1. 문제점
2. 2. DCE/RPC 기반
3. 경쟁 기술
DCOM은 CORBA와 경쟁하는 기술이었다. 인터넷 상에서 코드와 서비스 재사용을 위한 모델로 여겨졌으나, 방화벽 및 보안 문제로 인해 HTTP와 웹 브라우저 조합에 밀려났다. 마이크로소프트는 "ncacn_http"(Network Computing Architecture, Connection-based, over HTTP)를 통해 HTTP 전송을 DCE/RPC에 추가하려 했으나 실패했다. (이후 Exchange 2003에서 부활)
4. 보안
마이크로소프트는 보안 개발 수명 주기의 일환으로 안전하지 않은 코드를 재설계하는 이니셔티브를 진행했다. DCOM은 윈도우 XP 서비스 팩 2에서 몇 가지 중요한 보안 중심 변경 사항을 겪었다.[8]
2021년 6월, Tencent Security Xuanwu Lab에서 보고한 보안 취약점에 대응하여,[9] 마이크로소프트는 여러 버전의 윈도우 및 윈도우 서버에 대한 보안 업데이트를 출시하여 DCOM에 대한 접근을 강화했다.[10]
4. 1. 보안 취약점 및 대응
2021년 6월, Tencent Security Xuanwu Lab에서 보고한 보안 취약점에 대응하여,[9] 마이크로소프트는 여러 버전의 윈도우 및 윈도우 서버에 대한 보안 업데이트를 출시하여 DCOM에 대한 접근을 강화했다.[10] 윈도우 XP 서비스 팩 2에서는 보안 개발 수명 주기의 일환으로 안전하지 않은 코드를 재설계하기 위한 이니셔티브의 일환으로 DCOM에 몇 가지 중요한 보안 중심 변경 사항이 적용되었다.[8]5. 파생 버전 및 구현
'''COMsource'''는 서로 다른 플랫폼 간의 상호 운용성을 허용하는 분산 컴포넌트 오브젝트 모델(DCOM)의 유닉스 기반 구현체이다.[11] The Open Group에서 개발했으며, 소스 코드는 전체 소프트웨어 문서와 함께 제공된다.[11] COMsource는 윈도우 NT 4.0 소스 코드에서 직접 가져왔으며, 윈도우 NT 레지스트리 서비스 소스 코드도 포함한다.[11]
1995년, 디지털(Digital)과 마이크로소프트(Microsoft)는 OpenVMS가 윈도우 NT 클라이언트-서버 애플리케이션을 위한 영속성 계층 역할을 할 수 있도록 하기 위한 목적으로 Affinity for OpenVMS(NT Affinity라고도 함)를 발표했다.[12] 이 계획의 일환으로, 분산 컴포넌트 오브젝트 모델(DCOM)의 구현이 OpenVMS Alpha에 추가되었다.[13] DCOM을 지원하기 위해 VMS는 윈도우 레지스트리, NTLM 인증, 그리고 COM을 지원하는 데 필요한 Win32 API의 하위 집합을 구현하여 제공되었다.[14] DCOM은 Alpha용 OpenVMS V7.2-1에 처음 추가되었다.[15] DCOM의 유사한 구현이 AllConnect 프로그램의 일부로 디지털 유닉스(Digital Unix)에 추가되었다.[13]
TangramCOM은 리눅스 기반 스마트폰에서 DCOM을 구현하는 데 초점을 맞춘, 와인(Wine)과는 별개의 프로젝트였다.[16]
Wine 팀도 DCOM을 구현하고 있다. 바이너리 호환성을 확보하는 것을 목적으로 하며, DCOM을 네트워크상에서 사용하기 위한 것은 아니다. 마이크로소프트의 API를 통해 NDR(Network Data Representation)을 구현하는 데 그치지만, 가능한 한 MSRPC와 호환성을 유지하려고 노력하고 있다.
[http://j-interop.sourceforge.net/ j-Interop]는 Java에서의 MSRPC의 오픈 소스(LGPL) 구현이며, DCOM 서버와 상호 작용하는 DCOM 클라이언트를 Java로 작성할 수 있다.
5. 1. COMsource
COMsource는 서로 다른 플랫폼 간의 상호 운용성을 허용하는 분산 컴포넌트 오브젝트 모델(DCOM)의 유닉스 기반 구현체이다.[11] The Open Group에서 개발했으며, 소스 코드는 전체 소프트웨어 문서와 함께 제공된다.[11] COMsource는 윈도우 NT 4.0 소스 코드에서 직접 가져왔으며, 윈도우 NT 레지스트리 서비스 소스 코드도 포함한다.[11]1995년, 디지털(Digital)과 마이크로소프트(Microsoft)는 OpenVMS가 윈도우 NT 클라이언트-서버 애플리케이션을 위한 영속성 계층 역할을 할 수 있도록 하기 위한 목적으로 Affinity for OpenVMS(NT Affinity라고도 함)를 발표했다.[12] 이 계획의 일환으로, 분산 컴포넌트 오브젝트 모델(DCOM)의 구현이 OpenVMS Alpha에 추가되었다.[13] DCOM을 지원하기 위해 VMS는 윈도우 레지스트리, NTLM 인증, 그리고 COM을 지원하는 데 필요한 Win32 API의 하위 집합을 구현하여 제공되었다.[14] DCOM은 Alpha용 OpenVMS V7.2-1에 처음 추가되었다.[15] DCOM의 유사한 구현이 AllConnect 프로그램의 일부로 디지털 유닉스(Digital Unix)에 추가되었다.[13]
Wine 팀도 DCOM을 구현하고 있다. 바이너리 호환성을 확보하는 것을 목적으로 하며, DCOM을 네트워크상에서 사용하기 위한 것은 아니다. 마이크로소프트의 API를 통해 NDR(Network Data Representation)을 구현하는 데 그치지만, 가능한 한 MSRPC와 호환성을 유지하려고 노력하고 있다.
[http://j-interop.sourceforge.net/ j-Interop]는 Java에서의 MSRPC의 오픈 소스(LGPL) 구현이며, DCOM 서버와 상호 작용하는 DCOM 클라이언트를 Java로 작성할 수 있다.
5. 2. OpenVMS 및 Digital Unix
1995년, 디지털(Digital)과 마이크로소프트는 OpenVMS가 윈도우 NT 클라이언트-서버 애플리케이션을 위한 영속성 계층 역할을 할 수 있도록 하기 위한 Affinity for OpenVMS(NT Affinity)를 발표했다.[12] 이 계획의 일환으로, 분산 컴포넌트 오브젝트 모델(DCOM) 구현이 OpenVMS Alpha에 추가되었다.[13] VMS는 DCOM을 지원하기 위해 윈도우 레지스트리, NTLM 인증, COM 지원에 필요한 Win32 API의 하위 집합을 구현하여 제공되었다.[14] DCOM은 Alpha용 OpenVMS V7.2-1에 처음 추가되었다.[15] DCOM의 유사한 구현은 AllConnect 프로그램의 일부로 디지털 유닉스(Digital Unix)에도 추가되었다.[13]5. 3. TangramCOM
TangramCOM은 리눅스 기반 스마트폰에서 분산 컴포넌트 오브젝트 모델(DCOM)을 구현하는 데 초점을 맞춘, 와인(Wine)과는 별개의 프로젝트였다.[16]5. 4. Wine
Wine 팀도 DCOM을 구현하고 있다. 바이너리 호환성을 확보하는 것을 목적으로 하며, DCOM을 네트워크상에서 사용하기 위한 것은 아니다. 마이크로소프트의 API를 통해 NDR(Network Data Representation)을 구현하는 데 그치지만, 가능한 한 MSRPC와 호환성을 유지하려고 노력하고 있다.5. 5. j-Interop
j-Interop는 Java에서의 MSRPC의 오픈 소스(LGPL) 구현이며, DCOM 서버와 상호 작용하는 DCOM 클라이언트를 Java로 작성할 수 있다.참조
[1]
웹사이트
What is Distributed Component Object Model (DCOM)?
https://www.techtarg[...]
2022-08-03
[2]
웹사이트
DCE 1.1: Remote Procedure Call - Introduction to the RPC API
https://pubs.opengro[...]
2022-08-03
[3]
논문
A Comparison of Distributed Object Technologies CORBA vs DCOM
https://middlewares.[...]
[4]
웹사이트
Object Technology Jeff Sutherland: Web Services: Better than CORBA or DCOM?
http://jeffsutherlan[...]
2022-08-03
[5]
웹사이트
Remote Procedure Calls Using RPC over HTTP - Win32 apps
https://docs.microso[...]
2019-08-23
[6]
뉴스
Microsoft Press Release Announcing DCOM Beta
https://news.microso[...]
[7]
웹사이트
Distributed Component Object Model (DCOM) Remote Protocol
https://winprotocold[...]
2021-06-25
[8]
문서
DCOM Security Enhancements
https://technet.micr[...]
[9]
웹사이트
Security Update Guide - Microsoft Security Response Center
https://msrc.microso[...]
2022-08-03
[10]
웹사이트
KB5004442—Manage changes for Windows DCOM Server Security Feature Bypass (CVE-2021-26414)
https://support.micr[...]
2022-08-03
[11]
웹사이트
DataSheet COMsource for Solaris, Tru64 UNIX and other Platforms
http://www.opengroup[...]
[12]
웹사이트
OpenVMS at 20 Nothing stops it
https://h50146.www5.[...]
Digital
2021-02-12
[13]
서적
COM Beyond Microsoft: Designing and Implementing COM Servers on Compaq Platforms
https://books.google[...]
Digital Press
2000
[14]
웹사이트
OpenVMS Connectivity Developer Guide
http://h30266.www3.h[...]
2021-01-01
[15]
웹사이트
OpenVMS Alpha V7.2-1 Release Notes
http://odl.sysworks.[...]
1999-01
[16]
웹사이트
Home - TangramCOM
http://www.andjoin.c[...]
2022-08-03
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com