Setting up a BITS Server to utilize BITSADMIN for HTTP downloads

7:16 PM

BITSAdmin is a command-line tool that you can use to create download or upload jobs and monitor their progress. This utility is particularly useful if you want to upload/download bigger files (in excess of 10 MB's) in between different data centers. For bigger files where all you need to do is download a few bigger files via HTTP you can use a download manager such as the one from freedownloadmanager.org to get the files copied over. You can use similar methods if you enable FTP and use a FTP client such as Filezilla.
Now, why would you want to use BITSADMIN.exe when there are a bunch of other options available and with better documentation? You could argue say using robocopy and run multiple copies or use the Windows 2008 version to run multiple threads. Well, BITSADMIN.exe is a native tool to Windows providing you load it and it allows you to monitor the download progress as well as assign how fast you want to download the needed files. Likewise, it allows you to run a loop and upload or download all files you want (up to 100 streams worth). All the while, it will auto correct bandwidth if the boxes on either end are busy and restart a job if an error is encountered. Most importantly, it allows a user to chunk a file in to separate bits.
Now, do note that in any of the methods described above, the process is the same in that the file being requested whether on an upload or download is being split into different parts in order to make use of all available bandwidth on the connection between the source and destination boxes. In other words, your slowest link will be your bottleneck in most cases. In sending multiple files over the Internet when using something such as CIFS in Windows, there is a lot of overhead associated on the process which in turn slows down the potential for utilizing maximum bandwidth for the file transfer. However, since you can utilize the combination of scripting out a process to upload files where the files themselves will utilize all bandwidth it can muster, it adds up to a really efficient albeit dangerous method to get files over the wire quickly.

Configuration

In order to utilize bitsadmin.exe, you need the following configurations installed and configured:
  • IIS 6.0 or greater
  • BIT Server Extensions installed
    • Installed from Add/Remove programs in Windows 2003 or Roles in Windows 2008
  • IIS configured to enable BIT server extensions
    • Configured in IIS Admin MMC
    • Can be done on the entire site or on a per directory basis
  • Registration of any and all MIME types for any files that are being served off IIS that need to be transferred whether uploaded or downloaded
  • Local directory path on the file system that exists
  • Windows 2003 Support Tools (SP2) which will contain BITSADMIN.exe
  • OPTIONAL: Enable directory browsing to render files during testing phase remotely
NOTE - If the directory path on the destination does not exist the file command will fail specifying the directory does not exist.

Testing

In order to test the configuration based on what you are doing you can issue the following commands:
Download Content:
 
bitsadmin /transfer jobname /download /priority foreground http://Server_IP_Address/filename.zip "C:\filename.zip"

Upload Content:
 
bitsadmin /transfer jobname /upload /priority foreground http://Server_IP_Address/filename.zip "C:\filename.zip"

Monitor Jobs:
 
bitsadmin /monitor

Get Information on a Job:
 
bitsadmin /info jobname /verbose

For more information on teh BITSADMIN.exe utility you can go to the following URL:
http://msdn.microsoft.com/en-us/library/aa362813%28v=vs.85%29.aspx

You Might Also Like

0 comments

Contact Form

Name

Email *

Message *

Translate

Wikipedia

Search results