BITS is used to upload PST data from a workstation to the Uploads directory on the PST Flight Deck server. In a default configuration, BITS will determine the total bandwidth available to a client and dynamically throttle the upload of a PST file by balancing client workload and bandwidth availability. PST Flight Deck (FD) Agent has additional capabilities to set limits on the total bandwidth available to an agent based on a configurable schedule. Unique profiles can be set up that limit bandwidth usage based on certain user characteristics. For example, a profile might be set up for users in a remote office with a low bandwidth connection and, within that profile, BITS bandwidth can be limited by time of day.
To enable the FD Agent to control the max bandwidth available to BITS based on a schedule:
- Determine the max bandwidth desired to be used during business hours per Agent
- Determine off-hours max bandwidth per Agent
- Update applicable migration agent config XML with desired configuration **
** If multiple configurations are required for different types of users, Agent profiles for each use case may be created to accommodate this need.
The BITS configuration changes are performed in the Agent XML by adding the following lines of code to the bottom of the file.
<BitsUploadMaxSpeedBusinessHours>xxx</BitsUploadMaxSpeedBusinessHours> <BitsUploadMaxSpeedNonBusinessHours>yyy</BitsUploadMaxSpeedNonBusinessHours> <BitsUploadSpeedSchedule>zzz</BitsUploadSpeedSchedule>
These changes configure the FD Agent at the time the upload starts, and are reflected in the migration agent log.
Once the various parameters are determined, they are set up in the following steps.
Modify the FD Agent config file for a given profile.
<BitsUploadMaxSpeedBusinessHours>xxx</BitsUploadMaxSpeedBusinessHours> <BitsUploadMaxSpeedNonBusinessHours>yyy</BitsUploadMaxSpeedNonBusinessHours> <BitsUploadSpeedSchedule>zzz</BitsUploadSpeedSchedule> where xxx is the business hours bandwidth limit in kilobits/sec yyy is the non-business hours bandwidth limit in kilobits/sec zzz is the schedule in hex format.
To determine the hex value of the schedule:
- Click schedule editor
- Select “At selected times”
- Manipulate the schedule in the grid
- Click Set when done
- Copy the displayed hex code as shown below
- Paste it in the zzz area of <BitsUploadSpeedSchedule>zzz</BitsUploadSpeedSchedule>
- Save the config file
Once the migration has started, the config information is transferred to the workstation and is annotated in the migration agent log as shown below.
2015-08-21T12:54:16.7091533+02:00|Info|8| ClientCopyCore|ExecutingProcess.ProcessUpload => BitsLimitation.CheckBitsLimitation => LoggerImpl.Write| Changing Bits settings to: Enabled:True On/Off schedule: 369/2214 From/To: 8/17
Once the config changes are received by the agent, changes are made to the workstation registry as shown below. These keys are located in HKLM\software\policies\microsoft\windows\BITS.
The configuration can also be seen using gpedit.msc as shown below.