Presentation is loading. Please wait.

Presentation is loading. Please wait.

COM, DCOM and Software Components Nat Brown COM Program Management Microsoft Corporation

Similar presentations


Presentation on theme: "COM, DCOM and Software Components Nat Brown COM Program Management Microsoft Corporation"— Presentation transcript:

1 COM, DCOM and Software Components Nat Brown COM Program Management Microsoft Corporation

2 Agenda n What are COM and DCOM? n What’s right with COM n What’s wrong with CORBA / IIOP n Interesting COM Research Topics n Additional Reference Material

3 The COM Programming Model A scalable programming model Client Component  In the same process  Fast, direct function calls Client Component COM Client Process Server Process  On the same machine  Fast, secure IPC  Across machines  Secure, reliable and flexible DCE-RPC based DCOM protocol COM DCE RPC Client Server Machine Client Machine COM Component

4 Server Machine DCOM Architecture Flexible and extensible Pluggable Transports TCP, UDP IPX, SPX HTTP DCOMDCOM Msg-Q Clients DCOMDCOM COMObject

5 Server MachineClient Machine DCOM Architecture Flexible and extensible Pluggable Security TCP, UDP IPX, SPX HTTP DCOMDCOM Falcon Clients NT4 Security SSL/ Certificates NT Kerberos DCE Security DCOM COMObject

6 DCOM Architecture Efficient and scalable ServerClient Client  Multiplexing - Single Port per-protocol, per server process, regardless of # of objects  Scalable - Connection-Less Protocols like UDP Preferred  Established Connection-Oriented (TCP) Sessions Reused by same client

7 Server Machine Client Machine DCOM Architecture Efficient and scalable Server Client #1 Client #2  Low Bandwidth  Header is 28 bytes over DCE-RPC  Keep-Alive Messages bundled for all connections between Machines Keep-Alive Traffic for all connections Logical “Connections” or “Sessions”

8 What’s Right with COM n Focus is on binary object standard and scalable/fine-grained component re-use n Concreteness and depth of definition, for example security, lifetime management, activation, installation & deployment n Architected extensibility

9 What’s Wrong with CORBA/IIOP n Focus is on cross-node or network reuse/integration –in practice useful for vertical solutions, not horizontal reuse/integration n Incomplete specification –marshaling format of certain types of data- structures –implications of lack of services (e.g. Naming, Events, Lifetime management) n No architected extensibility

10 COM Research Areas n High-Level Language Integration n Application Management n Ease-of-use Deep/Robust Extensibility

11 Language Integration n Re-Use Mechanisms –Inheritance, Containment, Delegation, Aggregation –“Interception” n Constructs of modern OO languages –classes, fields, exceptions n Constructs of modern 4GL/RAD tools –data-binding –auto-persistence, -everything n Meta Data

12 Application Management n Distribution of Code + Data + Configuration Information n Security and Security Delegation –Security “roles” and re-use of components n Performance Monitoring n Runtime Environment

13 Ease-of-Use n What’s the next programming model layer to vastly improve ease-of-use? –Transactions? –Auto-caches & state management? –Auto-distribution & -execution?

14 Ease-of-Use: First Steps Clients Server Network Thread Pool Queue Connections ContextSecurity Shared Data Receiver Synchronization Service Logic ConfigurationManagement Server Thread Pool Queue Connections ContextSecurity Shared Data Receiver Synchronization Service Logic ConfigurationManagement MTS = easier servers Easier components? Component Type Info DLL Register RefCounting Query Interface Methods Class Factory Connection Points IDispatch Component Meta Data DLL Register RefCounting Query Interface Methods Class Factory Connection Points IDispatch

15 Reference Material n [Box1 97] D. Box, Q&A ActiveX/COM, Microsoft Systems Journal, March 1997, pp n [Box2 97] D. Box, Q&A ActiveX/COM, Microsoft Systems Journal, July 1997, pp n [Brockschmidt 93] K. Brockschmidt, Inside OLE 2, Redmond, Washington: Microsoft Press, n [Brown 96] N. Brown, C. Kindel, Distributed Component Object Model Protocol -- DCOM/1.0 n [Chappell 96] D. Chappell, Understanding ActiveX and OLE, Redmond, Washington: Microsoft Press, n [COM 95] The Component Object Model Specification, n [DCE 95] AES/Distributed Computing - Remote Procedure Call, Revision B, Open Software Foundation, n [Rogerson 96] D. Rogerson, Inside COM, Redmond, Washington: Microsoft Press, n [Wang 97] Y. M. Wang, COM/DCOM Resources,


Download ppt "COM, DCOM and Software Components Nat Brown COM Program Management Microsoft Corporation"

Similar presentations


Ads by Google