PRB: Delayed DCOM Activation on Multihomed Computers (288886)
The information in this article applies to:
- Microsoft COM, when used with:
- the operating system: Microsoft Windows NT 4.0
- the operating system: Microsoft Windows 2000
This article was previously published under Q288886 SYMPTOMS
On a multihomed computer, you may encounter long Distributed Component Object Model (DCOM) activation times. When the server computer is connected to two networks (an internal and an external network), the client can only see the server IP address that is associated with the external network.
CAUSE
This problem occurs during the client's OXID resolution. During OXID resolution, the client computer uses either the IOXIDResolver::ResolveOxid2 or IOXIDResolver::ServerAlive method to make calls to the server computer.
Activation calls are optimized to carry out OXID resolution during the call. However, if there are multiple bindings for the server's OXID, the
client's OXID Resolver (OR) process makes calls on these bindings (ServerAlive) to test their accessibility. During interface pointer unmarshaling, the client's OR must call the server's OR to resolve the server OXID (ResolveOxid2), which may be followed by accessibility tests (ServerAlive).
In Windows NT 4.0, the OR makes the remote calls sequentially. If the first
IP address is not reachable, the call must timeout before the OR
moves to the next IP address. The timeout period varies depending on the
transport that is used.
RESOLUTION
To resolve this problem, change the order of TCP/IP binding so that the IP address to which the DCOM clients connect appears first in the list.
On Windows NT 4.0, follow these steps:
- In Control Panel, click Network.
- On the Bindings tab, in the Show Bindings for drop-down list box, click All Protocols.
- In the TCP/IP protocol list, move the external network interface card (NIC) to the top of the list.
- Click OK to apply the changes.
- Restart the computer for the changes to take effect.
On Windows 2000, follow these steps:
- On the Start menu, click Settings, and then click Network and Dial-up connections.
- On the Advanced menu, click Advanced Settings.
- In the Bindings list, move the external NIC to the top of the list.
- Click OK to apply the changes.
- Restart the computer for the changes to take effect.
REFERENCES
For more information about OXID resolution, refer to the Distributed Component Object Model Protocol specification at the following Microsoft Web site:
Modification Type: | Major | Last Reviewed: | 11/17/2003 |
---|
Keywords: | kbDCOM kbprb KB288886 |
---|
|