The Background Intelligent Transfer Service can be used to transfer large files from remote hosts. BITS supports throttled and asynchronous transfer of files between machines using idle network bandwidth.
Add-BitsFile Add one or more files to a BITS transfer. Complete-BitsTransfer Complete a BITS transfer. Get-BitsTransfer Get a single or multiple BITS transfer. Remove-BitsTransfer Delete a BITS transfer. Resume-BitsTransfer Resume a suspended BITS transfer. Set-BitsTransfer Configure BITS transfer jobs. Start-BitsTransfer Create and start a BITS transfer job. Suspend-BitsTransfer Suspend a BITS transfer job.
This service is used by Windows Update, SUS, SMS and many third party packages such as Google gears and AppSense.
The BITS server extension may be installed on IIS 7.0 (Windows Server 2008)
Add/Remove Windows Components | Application Server | Details | IIS | BITS Server Extensions
Then configure an IIS virtual directory.
BitsTransfer.ps1 - Example bits script
Test-Path - Return true if a path exists
Background Intelligent Transfer Service - Wikipedia
BITSADMIN - command line utility (Windows XP)