Firefox 57 delays tracking domains
Mozilla implemented a new feature in Firefox 57 that its lead developer calls tailing. Tailing delays the loading of scripts from a list of known tracking domains to improve the page load performance.
The core concept works similarly to lazy load. Instead of loading all scripts and elements of a web page directly, some content is paused to give more important content more resources to work with.
The theory is that pages load faster because of this. Mozilla noticed that tailing has a positive effect on page load performance because Firefox may use (more) "network bandwidth, I/O and CPU for loading and processing of images and scripts running on the site" so that the web page is loaded faster.
Firefox delays tracking scripts for six seconds by default. Scripts that Firefox identifies as coming from tracking domains are paused for the time and moved to the end of the queue. This happens only for scripts that are asynchronous or loaded dynamically.
Mozilla uses the same list that it uses for the browser's tracking protection feature. There is no way currently to add or remove domains from that list.
Tracking images, XHRs (XMLHttpRequests), and requests made by tracking scripts are automatically and always delayed.
The scripts, which are not necessary for the display of the site usually, are moved to the end of the loading queue so that pages render faster.
Mozilla notes that the method has its problems. Issues happen for the most part on sites that load resources from known tracking domains that are required for the rendering of a page, and for sites that are not "well built".
It can happen that a blank page is displayed on sites if a resource from a tracking domain is required. Mozilla found that to be the case on Google's Page Hiding Snippet for instance.
Configure tailing in Firefox
Tailing can only be configured using advanced configuration options. You can load about:config?filter=network.http.tailing to display them all in the Firefox web browser for instance, or assign different values to them using a user.js file.
- network.http.tailing.enabled -- Set this to false to disable tailing in Firefox
- network.http.tailing.delay-quantum -- This defines the minimum time in seconds that resources from identified tracking domains get delayed (0.6 seconds)
- network.http.tailing.delay-quantum-after-domcontentloaded -- Defines the delay after dom content has loaded (0.1 seconds)
- network.http.tailing.delay-max -- This defines the maximum time in seconds that resources from identified tracking domains get delayed (6 seconds)
Firefox will display most web pages faster with tailing. That's a good thing, and while some users may say that this is not going far enough, others may be very happy with it. Users can enable tracking protection in Firefox to block these tracking domains outright and speed up browsing even further, or use a content blocker for the same effect.
The benefit of a content blocker is that it gives users more control, and protects them better for malicious advertising campaigns. (via Bleeping Computer)
Interesting. Thank you for the info, Martin.
Martin, if the Safebrowsing feature is disabled, if the safebrowsing folder has been replaced by a 0byte read-only file in order to prevent downloads of safebrowsing data, would you consider that the tailing feature is then obsolete? No safebrowsing data hence no tailing, considering as you write it, that,
“Mozilla uses the same list that it uses for the browser’s tracking protection feature. There is no way currently to add or remove domains from that list.”
Just wondering because I discover the tailing feature with your article.
Safe Browsing and Tracking Protection are two entirely different things and I use Tracking Protection and… I don’t have a safe browsing folder in Any of my FF profiles, I think that’s where it would be, the profile folder. It would be faster for me to create a new profile than it would to re-configure my about:config entries to verify that. Don’t wantta, feeling lazy. ;)
I’ve never been able to find where the Tracking Protection data is at but I also haven’t looked in all the db, sqlite and json files. I suspect that it might be in the program folder because it feels to me like it very seldom gets an updated list, except maybe during browser updates. Just speculation on my part and I could be wrong.
I saw a claim made that disabling tailing improved page load times but I didn’t see that at all using the Dev Tools. Tailing could have a negative impact for a badly configured website but I haven’t seen that, yet. ‘One’ of the sites I tested is when you go to the first link that Martin provided in the article, then from there, open the ‘real life example’ link.
I think the concept of tailing is brilliant but will have very little effect on my FF browsing because of my config and extensions used. Just my one cent.
Tailing isn’t useful if you use uBlock Origin, but there’s no need to disable it either and become “different”.
” Maybe there is an exception to the no js, no trackers claim? ”
JS is clearly the most powerful way to track but any network request will do. From web bugs to Etags to cookies to IP to JS-less fingerprint, there’s a lot of avenues.
Totally agree. “Maybe there is an exception to the no js, no trackers claim?” was really just intended as food for thought. I have a tendency to get long-winded so I have to make a conscious effort to limit what I spew out which obviously doesn’t work very well to limit my rambling. See? ;)
maybe is a placebo, but i found that page loading is way more faster with tailing disabled, (uBo/medium, scriptsafe, dce and config tweaks only)
Iâ€™m looking forward to Martinâ€™s answer. I thought that safebrowsing and tracking protection were two entirely different things, with safebrowsing using a list from Google and tracking protection using a list from Disconnect…
Hy Hy (Sir!) … you may be right (and I think you are) about tracking protection being distinct from safebrowsing. I use neither one so I tend to forget their specifics. I do know that safebrowsing data is downloaded in the safebrowsing folder but I’m not sure where Disconnect’s data is held. As far as I’m aware of no Disconnect data is downloaded here so I still do wonder if tailing is pertinent given tracking protection is disabled (whatever its provider in fact).
I see what you mean!
What I wonder is if this tailing feature would have any noticeable effect when people are using blocking add-ons like uBlock Origin, Privacy Badger, Disconnect, AdBlock Plus, Blur, Ghostery, NoScript, RequestPolicy Continued, etc.. Presumably such add-ons block the very tracking scripts which tailing seeks to delay the loading of, so perhaps users of these add-ons would see no effect on page loading times with tailing?
Afterthought: the â€œtailingâ€ feature could use a more descriptive, catchier name…
firefox 57 sucked a lot of data even if you set your startpage or homepage blank. is this some kind of telemetry? the data transfer stop only if you close the browser. i already turned off the automatic update and health/performance report. strange…
is this some kind of telemetry?
Use uMatrix to know: https://github.com/gorhill/uMatrix/wiki/Logger
Nice… first Firefox ESR broke my Tabs Mix Plus, introducing right-click menus with maybe a hundred options, of whom the most important one, Open in a New Tab, would not work anymore ; then it completely wiped my profile, so my bookmarks are gone. The whole 15 000 lot of them. Fortunately, I have backups all over the place (or so I hope). Firefox has turned into Windows 10, and it’s not a pretty sight.
It seems, Everyone wants some tail. You know what I mean?
Hum… I’m afraid I don’t ;=)
It’s metaphore for “Funkzilla-Stockholm’s Syndrome” Poor ol MotherMayI.Delay.tracking=1 system reduced to a Secondary Flight control on a modern rocket. At MOZ-AIRLINES We track ALL your FLIGHTS for your own SAFETY. Meanwhile, Pluto loses it’s planetary status, rip up the Sun Signs, and Ephmeris’s who needs a flight plan when your part of the Satelite system itself. Mozilla employees don’t wash hands before return from libc since there’s no more water available on the SUN without signing the Secret Public NDA first.
Another way to look at this is BOHICA. You should have no doubt what I speak of now. IF your a moz programmer hopefully I just wasted a LOT of your time.
@Eight Inch Floppy, no waste of time. I’m fond even of things I don’t understand, maybe because I don’t understand together with the fact that as a true optimist I always imagine the best! I love all languages, dialects, slang, pseudo-languages … and Geek is one of those I listen to as a musician would be captivated by sounds from outer-space. LOL! I’m just a plain bourgeois, nothing really exciting :=)
Beyond the terrific handle of Eight-Inch Floppy, you lost me.
Just use Mozilla backup or Hekasoft Backup & Restore. I run here with the problem that when Avant Browser with the Firefox renderer does not shut down properly or another problem that all my settings, bookmarks and so on are gone so it’s a full clean install when start up but I take Hekasoft, click on my latest backup of the day and within a couple of seconds all is back. Even with plugin, add-on settings and all…
Kz. from Belgium
Nice try NSAzilla. The delayed socket will report all the sites you browse meanwhile it’s deferred. That’s an improved tracking.
If you don’t believe me, telemetry can go down under seconds and up to months.
Cookies can last for a long time. Requests use epoch-time which is very precise.
If one starts thinking like serpents…