Dcom, DOT NET Programming

What is DCOM?

DCOM is different from COM in that it allows for creating objects distributed around  a network, and a protocol for invoking that object's methods, & secures the access to the object. The DCOM provides a wrapper around the COM, so it is a backward compatible extension. The DCOM uses Remote Procedural Calls (RPC) using Open Software Foundation's Distributed Computing Environment.

These RPC are implemented on  TCP/IP and named pipes. The protocol which are actually  used are  registered just before to use, as opposed to being registered at the initialization time. The main  reason for this is that if a protocol is not being used, it can't  be loaded.

In order to inform an object that the client is still not dead, periodic pinging is used. Therefore, when the client has died and no ping has been received (to refresh it) before the expired  time, the server object will perform some clean up tasks (including decrementing its reference count).

As  RPC across a network are typically slow (compared to same machine processes residing ), DCOM sends multiple requests in the same call. For e.g., in COM, the program performs a QueryInterface, that is one interface at a time. In DCOM, multiple QueryInterfaces are all clustered into one call.

This clustering optimization trick is also used when creating an instance of the object and serializing it with the data.As these two operations usually occur together, the DCOM allows one method which will perform both operations in one call without waiting for an acknowledgment from the first task before performing the second one.

Similarly, when a client pings its server object, he can do it in one call.  If there are multiple clients sending pings to multiple servers, then an optimization is made where the multiple pings going to the same object are consolidated into just one ping. This is to cut down on the use of bandwidth used only for pinging.

The client has the control to set the computer that will be responsible for the lifetime of the object. this means, these objects are not created just somewhere  the system resources and access privileges allow for it.

Call security is implemented in all 4  ways: authentication (to prevent false clients from impersonating the true client), authorisation (to insure that the  client only does what it is authorized to do), data integrity (to insure that data was not tampered with it during transit) and data privacy (to insure that only designated sources can read it). The security issues are handled as they are on the operating systems. The client gives the server various access privileges to access memory or disk space.

Posted Date: 9/21/2012 7:27:30 AM | Location : United States

Related Discussions:- Dcom, Assignment Help, Ask Question on Dcom, Get Answer, Expert's Help, Dcom Discussions

Write discussion on Dcom
Your posts are moderated
Related Questions
How to use datagrid view

What is CLR?  CLR(Common Language Runtime) is the major resource of .Net Framework. It is collection of services such as garbage collector, exception handler, jit compilers etc

What are runtime services? Runtime services having of predefined and user-defined classes that are available to the workflow runtime engine during implementation to customize t

Problem: (a) Explain the difference between these two lines of ASP codes: (b) The VBScript language includes some built-in functions which are often used in ASP co

Explain Forms authentication in detail. In the old ASP if you were said to create a login page and do authentication you have to do lot of custom coding. But now in ASP.NET tha

What is marshalling and types of marshalling? The Marshaling is used when an object is converted so that it can be sent across the network or across the application domains. Th

Looking for web designer Project Description: I am seeking website designer with developing skills of Html, .Net and also supports in all browsers. Please ping your previous

The Full form of CLR is Common Language Runtime and it is  the heart of the .NET framework. All Languages have its own runtime and its the responsibility of the runtime to take car

Require Guys in Gaming Tracks Company for a mobile game developing Project Description: I want a team of game developers for life-time as mobile dev team in my company. So, i