Modelo de objetos de componentes distribuidos
Modelo de objetos de componentes distribuidos (DCOM) es una tecnología propiedad de Microsoft para la comunicación entre componentes de software en computadoras en red. DCOM, que originalmente se llamaba "Network OLE", amplía el COM de Microsoft y proporciona el sustrato de comunicación bajo la infraestructura del servidor de aplicaciones COM+ de Microsoft.
La extensión de COM a COM distribuido se debió al uso extensivo de DCE/RPC (Entorno informático distribuido/Llamadas a procedimientos remotos), más específicamente la versión mejorada de Microsoft, conocida como MSRPC.
En términos de las extensiones que agregó a COM, DCOM tuvo que resolver los problemas de:
- Marshalling – serializar y deserializar los argumentos y devolver los valores del método llama "sobre el alambre".
- Recopilación de basura distribuida – asegurando que las referencias sostenidas por los clientes de interfaces se publiquen cuando, por ejemplo, el proceso cliente se estrelló, o la conexión de red se perdió.
- Combinando un número significativo de objetos en el navegador del cliente en una sola transmisión para minimizar la utilización del ancho de banda.
Uno de los factores clave para resolver estos problemas es el uso de DCE/RPC como el mecanismo RPC subyacente detrás de DCOM. DCE/RPC tiene reglas estrictamente definidas con respecto a la ordenación y quién es responsable de liberar memoria.
DCOM era un importante competidor de CORBA. Los defensores de estas dos tecnologías vieron que algún día se convertirían en el modelo para la reutilización de códigos y servicios en Internet. Sin embargo, las dificultades involucradas en lograr que cualquiera de estas tecnologías funcione a través de firewalls de Internet y en máquinas desconocidas e inseguras, significaron que las solicitudes HTTP normales en combinación con los navegadores web ganaron a ambos. Microsoft, en un momento, intentó remediar estas deficiencias agregando un transporte http adicional a DCE/RPC llamado ncacn_http (protocolo orientado a la conexión de arquitectura de computación en red).
DCOM se lanzó públicamente como versión beta para Windows 95 el 18 de septiembre de 1996.
DCOM es compatible de forma nativa en todas las versiones de Windows a partir de Windows 95 y en todas las versiones de Windows Server desde Windows NT 4.0
Mejoras de seguridad
Como parte de la iniciativa que comenzó en Microsoft como parte del ciclo de vida de desarrollo seguro para rediseñar el código inseguro, DCOM vio algunos cambios significativos centrados en la seguridad en Windows XP Service Pack 2.
En respuesta a una vulnerabilidad de seguridad informada por Tencent Security Xuanwu Lab en junio de 2021, Microsoft lanzó actualizaciones de seguridad para varias versiones de Windows y Windows Server, lo que fortaleció el acceso a DCOM.
Versiones e implementaciones alternativas
COMsource es una implementación de DCOM basada en Unix, que permite la interoperabilidad entre diferentes plataformas. Su código fuente está disponible, junto con la documentación completa y completa, suficiente para usar y también implementar una versión interoperable de DCOM. COMsource proviene directamente del código fuente de Windows NT 4.0 e incluye el código fuente de un servicio de registro de Windows NT.
En 1995, Digital y Microsoft anunciaron Affinity para OpenVMS (también conocido como NT Affinity), cuyo objetivo era permitir que OpenVMS sirviera como capa de persistencia para las aplicaciones cliente-servidor de Windows NT. Como parte de esta iniciativa, se agregó una implementación del Modelo de objetos de componentes distribuidos (DCOM) a OpenVMS Alpha. Para admitir DCOM, VMS recibió implementaciones del Registro de Windows, autenticación NTLM y un subconjunto de las API de Win32 necesarias para admitir COM. DCOM se agregó por primera vez a OpenVMS V7.2-1 para Alpha. Se agregó una implementación similar de DCOM a Digital Unix como parte del programa AllConnect.
TangramCOM fue un proyecto separado de Wine, centrado en implementar DCOM en teléfonos inteligentes basados en Linux.
Contenido relacionado
Camión táctico pesado de movilidad expandida
Historia de la ciencia y la tecnologia
Sociología computacional