Background Intelligent Transfer Service
Background Intelligent Transfer Service (BITS) is used by programmers and system administrators to download files from or upload files to HTTP web servers and SMB file shares. BITS will take the cost of the transfer into consideration, as well as the network usage so that the user's foreground work has as little impact as possible. BITS also handles network interuptions, pausing and automatically resuming transfers, even after a reboot. BITS includes PowerShell cmdlets for creating and managing transfers as well as the BitsAdmin command-line utility.
BITS can be used by Windows to download updates to your local system. If you are an end-user searching for ways to troubleshoot your BITS installation, see Fix Windows Update Issues.
Use BITS for applications that need to:
- Download from or upload files to an HTTP or REST web server or SMB file server.
- Automatically resume file transfers after network disconnects and computer restarts.
- Preserve the responsiveness of other network applications.
- Be mindful of the network cost on e.g. roaming networks
- Optionally work with BranchCache to optimize wide area network (WAN) traffic
BITS is a COM interface designed for C and C++ developers that can also be used by .NET developers. UWP developers should use the Windows.Networking.BackgroundTransfer API and not the BITS API.
For complete version history and information on earlier operating system, see What's New.
In this section
||General information about BITS.
||Procedural guide for developing BITS clients that transfer files between a client and server.
||Reference information for the BITS programming interfaces. Also contains information about samples, tools, server settings for upload jobs, and the upload protocol.
||Information to consider when designing an application that uses BITS.
The following are additional resources.
|.NET Reference DLL||For information on using BITS from .NET using reference DLLs, see Calling into BITS from .NET using Reference DLLs|
|.NET Wrapper||For other .NET wrappers for BITS, you can search nuget for projects tagged with the BITS tag.|