Firefox embraces Microsoft BITS to install updates
Starting with Firefox 68, Mozilla's web browser began to use Microsoft BITS (Background Intelligent Transfer Service) to deliver updates -- the same technique that is used by Windows Update.
With the arrival of Firefox 70, BITS will be utilized with a dedicated update agent in place as a proxy rather than simply being part of the browser itself, allowing updates to be more easily installed.
See also:
- Firefox needs an urgent firefix!
- Security software is causing Firefox users to lose saved passwords
- Mozilla promises to delete private data collected by Firefox fix and apologizes for add-on outage
One of the reasons behind the move to BITS via an update agent is to make it easier for users with slower connections to get hold of the latest updates. The current use of BITS means that updates can only be download when someone has Firefox running; by introducing a dedicated update agent, it is possible to have these updates truly download in the background, without impacting on browser performance.
The idea was put forward some time ago, with Mozilla's Matt Howell saying:
The Update Agent is being planned as a background process which will remain running after the browser is closed to download and apply updates. This should make updating more convenient for everyone and reduce the time to get new updates for users who aren't well supported by the current update process because they don't run Firefox very much and/or they have slow Internet connections.
More recently, Kirk Steuber explained that:
As a stepping stone towards releasing the update agent, we are going to first allow Firefox to update using BITS without the update agent. This will allow us to more easily transition from one download mechanism to the other rather than just dropping it in all at once. For now, Firefox will call out to BITS via an interface built in to the binary. This interface will, for now, communicate with BITS directly, but will be designed such that in the future it can communicate with BITS using the Update Agent as an intermediary. This will allow it to manage BITS jobs as the Local Service user, which is how we want downloads to occur when the Update Agent downloads them independently.
Anyone running Firefox nightlies can see the feature in action. As noted by Techdows, it can be switched on by enabling the app.update.BITSenabled. and app.update.BITS.inTrialgroup. settings.