On one of the Windows Servers, when Windows Update runs, it takes up 100% CPU. We do not want to disable the Windows Update. So we look for a way to schedule/control/restrict/throttle the Windows Update Download. Note we are not trying to schedule the installation of the downloaded updates.
The trick is configure BITS (the transfer service which Windows Update depends on) so that it has 0 bandwidth during production hours.
EnableBITSMaxBandwidth = 1 turns on the bandwidth control.
MaxTransferRateOnSchedule = 0 means 0 kilbits per second allowed within the restricted schedule period.
MaxBandwidthValidFrom = 4 means the restricted schedule period starts at 4AM PST
MaxBandwidthValidTo = 11 means the restricted schedule period ends at 5PM PST
UseSystemMaximum = 1 means there is no limit on bandwidth outside of the restricted schedule period.