MORE INFORMATION
Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.
Background Intelligent Transfer Service 2.0
BITS 2.0 transfers files between a client and server and returns progress information to the client for file upload and file download operations. BITS 2.0 provides the following features:
- Performs concurrent foreground downloads.
- Supports the server message block (SMB) protocol for remote names.
- Supports file range download. A program can change the transfer source of a file.
- Improves client bandwidth consumption.
BITS 2.0 provides queue management of file transfer requests from multiple programs based on priority levels that are indicated by the requesting programs. BITS 2.0 concurrent foreground transfer supports transferring files from multiple jobs using full bandwidth, and it supports background transfer using only idle bandwidth. If the file transfer process is disrupted, BITS can resume the file transfer from the exact point of interruption instead of retransferring the whole file. Because BITS restarts transfers from the exact point of interruption, all transfers are resumed efficiently when disruptions such as network disconnects and computer restarts occur.
BITS 2.0 provides a set of application program interfaces (API) for developers to access the new functionality. For more information about the new API for BITS 2.0 and the Microsoft Windows XP Platform SDK, visit the following Microsoft Web site:
Other improvements
Improvements were made to BITS 2.0 that make sure that the service starts and stops reliably when programs that use layered service providers are present on the system. Programs that use layered service providers include some third-party firewall programs.
BITS 2.0 transfers files more efficiently while throttling bandwidth consumption over slow connections. BITS 2.0 also offers improved throttling support in Kerberos authentication environments.
Known issues
BITS 2.0 clients may not be able to download files from SMS 2003
BITS 2.0 may request ranges that go beyond the end of a file. When BITS 2.0 requests ranges that go beyond the end of a file, some server programs do not function correctly. This problem may occur when you use BITS 2.0 with Internet Server API (ISAPI) programs such as Microsoft Systems Management Server (SMS) 2003. This problem has been fixed in Systems Management Server 2003 Service Pack 1.
Important A BITS 2.0 client may not be able to complete a file transfer from a Microsoft Systems Management Server (SMS) 2003 server.
For additional information about this issue, click the following article number to view the article in the Microsoft Knowledge Base:
832860
Windows XP Service Pack 2 clients cannot use Background Intelligent Transfer Service to download files from SMS 2003
BITS 2.0 clients may not successfully complete the transfer of a file
A computer that is running BITS 2.0 may not successfully complete a file transfer and may return one of the following error messages:
HTTP 401-Server Authentication required.
Note When the BITS 2.0 client receives this error message, it may also receive error code 0x80190191.
HTTP 407-Proxy Authentication.
Note When the BITS 2.0 client receives this error message, it may also receive error code 0x80190197.
This problem occurs when all the following conditions are true:
- The client program that is using BITS 2.0 does not specify that the credentials of the client can be used by calling the IBackgroundCopyJob2::SetCredentials method.
- The Microsoft LAN Manager compatibility level (LmCompatibilityLevel) on the BITS 2.0 client contains a value that is set to 1 or to 0. You can find the LAN Manager compatibility level entry n the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\LmCompatibilityLevel
- The file transfer is performed through a Windows-based server or a Windows-based Internet proxy server that requires Integrated Windows authentication.
Authentication behavior in BITS 2.0
For security reasons, to avoid passing credentials to any proxy or server that requests logon credentials, BITS 2.0 allows logon credentials to be used only if one of the following conditions is true:
- A program prompts for credentials to be applied by calling the following function and similar parameters:
IBackgroundCopyJob2::SetCredentials. (target=ProxyorServer, Negotiate/NTLM, username=NULL,password=NULL)
- If the LmCompatibilityLevel value on the client is set to a value that is greater than or equal to 2.
Important By default, Windows XP sets the LmCompatibilityLevel to 0. With BITS 2.0, logon credentials will not be used if the LmCompatibilityLevel is set to 0.
Note BITS 1.5 allows logon credentials to be used for proxy authentication when the LmCompatibilityLevel is less than 2 and when the SetCredentials method is not called.
Programs that work with BITS 1.0 and 1.2 may not work correctly with BITS 1.5 or BITS 2.0. This is because the default value for the LmCompatibilityLevel registry value on Microsoft Windows 2000 and Microsoft Windows XP is 0.
For additional information about the LmCompatibilityLevel registry entry, click the following article number to view the article in the Microsoft Knowledge Base:
147706
How to disable LM authentication on Windows NT
To resolve this problem,
change the default behavior of BITS 2.0 to not send logon credentials to a proxy or server that requires authentication. To do this, change the program to use the IBackgroundCopyJob2::SetCredentials method that will use the default logon credentials as described in the following Microsoft Web site:
To work around this problem by changing the method that the BITS 2.0 client uses to provide logon credentials to the server, create a
UseLmCompat registry value in the
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\BITS subkey, and then add a DWORD value of 0. To do this, follow these steps on the BITS 2.0 client computer:
- Click Start, click Run, and then type regedit.
- Locate the following subkey: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\BITS
- Right-click BITS, point to New, click DWORD Value, type UseLmCompat, and then press ENTER.
- In the right pane, right-click UseLmCompat, and then click Modify.
- In the Value data box, type 0, and then click OK.
- Quit Registry Editor.
- Restart the BITS 2.0 service.
How to download and install the update for BITS 2.0 and WinHTTP 5.1
To download and install this update, visit the Microsoft Windows Update Web site. Install update 842773.
Administrators can also download this update from the Microsoft Download Center.
Important Installing BITS 2.0 will turn on the BITS service if it has previously been turned off.
The following file is available for download from the Microsoft Download Center:
Release Date: July 13, 2004
For additional information about how to download Microsoft Support files, click the following article number to view the article in the Microsoft Knowledge Base:
119591 How to Obtain Microsoft Support Files from Online Services
Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help to prevent any unauthorized changes to the file.
Administrators can also deploy this update by using Microsoft Software Update Services (SUS).
For additional information about SUS, click the following article number to view the article in the Microsoft Knowledge Base:
810796
Software Update Services Overview white paper available
How to remove the update for BITS 2.0 and WinHTTP 5.1
To remove the update after it is installed, follow these steps:
- Click Start, click Run, type appwiz.cpl, and then click OK.
- Click Add or Remove Programs.
- In the list of currently installed programs, click Windows XP Hotfix - KB842773, and then click Remove.
- Follow the instructions to remove the update from your computer.
- Restart your computer.
Administrators can also use the Spunist.exe utility to remove this package. The Spuninst.exe program file is located in the %Windir%\$NTUninstallKB842773$\Spuninst folder.
How to verify that the update for BITS 2.0 and for WinHTTP 5.1 is installed
To verify that the update that is described in this article is installed, compare the files on your Windows XP computer with the following file information.
The English version of this update has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the
Time Zone tab in the Date and Time tool in Control Panel.
Date Time Version Size File name
--------------------------------------------------------------
01-Jul-2004 22:08 6.6.2600.1569 7,680 Bitsprx2.dll
01-Jul-2004 22:08 6.6.2600.1569 7,168 Bitsprx3.dll
01-Jul-2004 22:08 6.6.2600.1569 361,984 Qmgr.dll
01-Jul-2004 22:08 6.6.2600.1569 17,408 Qmgrprxy.dll
01-Jul-2004 22:08 5.1.2600.1557 331,776 Winhttp.dll
30-Jun-2004 23:59 5.1.2600.1570 158,720 Xpob2res.dll
Alternatively, you can use the following registry subkey to verify that the update is installed:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Hotfix\KB842773
The update is installed if the entry includes an Installed DWORD value, and that value is set to 1.
This update is scheduled to be included with Windows XP Service Pack
2.