Lesson 5 | Interoperability with other technologies |
Objective | Identify Technologies outside of CORBA that provide Similar Functionality. |
Identify Technologies outside of CORBA that provide Similar Functionality
CORBA is not the only technology available that has been designed to provide a foundation for building distributed applications. Regardless of whether these technologies are viewed as competing directly with CORBA, there is the all-important concept of interoperability.
Many organizations have already built distributed systems using other technologies and choosing CORBA as a solution often means that each
technology should provide some type of interoperability options to developers and administrators. In this lesson we'll look at Microsoft's Component Object Model (COM) technologies and Sun/Javasoft's Remote Method Invocation (RMI), and also briefly looks at some bridging technologies that have been introduced.
Component Object Model (COM)
Many people assume that Microsoft and the
OMG are at war, which is not the case. Microsoft is a member of the OMG and the OMG has invested effort to ensure COM/CORBA interoperability. Microsoft originally asked the OMG to change the CORBA specification to fit
COM.
When that did not meet with success, the focus moved to interoperability. Chapter sixteen of the CORBA specification is devoted to specifying the
COM/CORBA mapping. Chapter seventeen covers mapping between CORBA and OLE automation. Microsoft has licensed COM to IONA, allowing a major vendor to create CORBA/COM ORB interoperability. Many ORB vendors also offer CORBA/COM bridging products that enable interoperability.
DCOM
The Distributed Component Object Model (DCOM) Remote Protocol is a protocol for exposing application objects by way of remote procedure calls (RPCs). The protocol consists of a set of extensions layered on Microsoft Remote Procedure Call Protocol Extensions as specified in [MS-RPCE].
The DCOM Remote Protocol is also referred to as Object RPC or ORPC.
The DCOM Remote Protocol extends the Component Object Model (COM) over a network by providing facilities for creating and activating objects, and for managing object references, object lifetimes, and object interface queries. The DCOM Remote Protocol is built on top of Remote Procedure Call Protocol Extensions, as specified in [MS-RPCE], and relies on its authentication, authorization, and message integrity capabilities. The following diagram shows the layering of the protocol stack.
Remote Method Invocation (RMI)
Javasoft's RMI API was originally perceived as a threat to CORBA, but Javasoft has committed to having RMI use IIOP as its underlying protocol, which will make RMI and CORBA interoperable. Sun's Enterprise JavaBeans effort is designed to work with both CORBA and COM, which represents yet another avenue for CORBA/COM interoperability.
When considering the borders between entire technology areas that provide similar functionality, interoperability really is a two-way street.
However, the fact that the
ORB vendors and
third-party vendors are talking
realistically about providing interoperability is a good sign. Make sure your vendors know that interoperability is important to you and request that they provide open solutions. If the market demands open solutions, they will become commonplace.