BITS (background intelligent transfer service)

overview

Background Intelligent Transfer Service (BITS) is used to transfer files between a client and server. This service is utilised by Windows to download system updates. However, it can also be used by other users or applications to download files from any Uniform Resource Locator (URL).

features

BITS can be used to carry out three different types of file transfer: download, upload and upload-reply. These transfers can automatically resume after disconnecting from a network, as well as recover from a shutdown or restart. Transfers can also run in the foreground or background, with different priority levels assigned.

Background transfers have been designed with the impact on other network applications in mind. BITS makes use of idle network bandwidth to transfer files at an increased rate. However, if other applications start using more bandwidth, the transfer rate is decreased. This is to ensure the transfer of files doesn’t negatively impact user experience.

Although BITS is able to monitor the bandwidth being used on the local machine, it is not able to monitor the impact it has on the wider network. However, users can configure limits manually to help prevent congestion on the network.

process

The process of transferring a file using BITS can be split into the six steps outlined below. More detailed information explaining what happens within each step can be found on this Microsoft Documentation.

  1. Connect to the BITS service
  2. Create a transfer job
  3. Add a file to the job
  4. Start the job
  5. Check the file has successfully transferred
  6. Complete the job