Article ID: 166159
Article Last Modified on 7/19/2007
APPLIES TO
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Web Edition
- Microsoft Windows XP Professional
- Microsoft Windows 2000 Datacenter Server
- Microsoft Windows 2000 Advanced Server
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Professional Edition
- Microsoft Windows NT Workstation 4.0 Developer Edition
- Microsoft Windows NT Server 4.0 Standard Edition
This article was previously published under Q166159
Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:
256986 Description of the Microsoft Windows registry
SYMPTOMS
When you use a multi-homed computer to connect to another computer, and the multi-homed computer is running one of the versions of Microsoft Windows that is referred to in the "Applies to" section, there may be a delay in establishing the connection.
CAUSE
This problem occurs because, by default, the Windows redirector uses the following logic to establish a NetBIOS session:
- Try to connect to the destination name on all bound transports, in the
order that they are bound.
- If IgnoreBindingOrder is set to 0, wait for the primary (first-bound) transport to finish. If it
succeeds in reaching the destination, set up a session on that transport. Cancel the other connections.
Note In Microsoft Windows 2000 and later versions, the IgnoreBindingOrder registry entry does not exist. If this registry entry does not exist, the default value for IgnoreBindingOrder is 1 (TRUE). In Microsoft Windows NT 4.0, the default value for IgnoreBindingOrder is 0 (FALSE).
If your multi-homed computer is on two networks that are connected by a router, and if the computer that you want to connect to is on only one of those networks, there are two paths to the target system. If the connection succeeds on both paths, the redirector chooses the primary transport as the preferred path. For example, the redirector may choose the local source IP address that is associated with that binding of NetBIOS over TCP/IP (NetBT) as the preferred path. The redirector cancels the remaining connection. Because of this choice, the packets that are sent from the multi-homed computer may be internally routed to the directly connected subnet, and the packets that the target system sends in response traverse the router. This scenario can be confusing to troubleshoot.
RESOLUTION
Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.
A newer Windows redirector is available. You can configure this redirector to accept the first transport to complete a connection and immediately cancel the connections on the other transports. A newer version of NetBT that supports better handling of multiple calls and cancels is also available.
To take advantage of this improvement, you must add a registry parameter.
To configure the registry parameter to correct the issue that is referred to in this article, start Registry Editor, locate the appropriate subkey by using the information below, and then add the registry value.
Microsoft Windows NT 4.0
Use the following registry subkey and value:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Rdr\Parameters
Value name: IgnoreBindingOrder
Value type: REG_DWORD (Boolean)
Value data range: 0, 1 (False, True)
Default value: 0 (False)
Value: 1
Note Setting this value to 1 (one) causes the redirector to accept the first
transport to complete a connection instead of waiting for success or failure
on the primary transport.
Microsoft Windows Server 2003, Microsoft Windows XP, and Microsoft Windows 2000
Use the following registry subkey and value:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MrxSmb\Parameters
Value name: IgnoreBindingOrder
Value type: REG_DWORD (Boolean)
Value data range: 0, 1 (False, True)
Default value: 1 (True)
Value: 1
STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Additional query words: MrxSmbObeyBindingOrder, multiple-homed, multi-homed, multiple NIC, slow, ObeyBindingOrder, RdrIgnoreBindingOrder
Keywords: kbbug kbnetwork KB166159