3 ms·
This isn't a time bomb, it's a symptom of the way modern browsers tend to have centralized I/O which means disk and network traffic goes through a single chokep
by kevingadd 5y ago
This isn't a time bomb, it's a symptom of the way modern browsers tend to have centralized I/O which means disk and network traffic goes through a single chokepoint. HTTP3 traffic appears to be able to cause one of Firefox's socket threads to hang, and since everything goes through it, all your network traffic is now dead. Chromium uses a similar model of routing all I/O through specific places, so it's vulnerable to similar sorts of problems (though AFAIK it has never failed this badly in production).
Basically, this could have happened at any point if a production service run by someone like Google, Facebook, Cloudflare etc managed to trigger a sufficiently bad bug in a modern browser's network stack.
If not for the centralized I/O this would just hang a single browser process, which isn't as impactful since Firefox and Chrome both split content out into many processes. It would also make it more obvious which server(s) are responsible since only certain tabs would be dying. FWIW, as far as I know this centralized I/O model was popularized by Google, not Mozilla.
- jacquesm 5y agoIt is because: (1) I did not explicitly enable this (2) The telemetry setting seems to have re-enabled itself on some update (3) I don't want any services from Mozilla, I want a browser (4) It worked until it blew up revealing that in fact, I suddenly did have service dependencies And finally, the reason I use FireFox is exactly your last sentence, so to see that they are slipping this in under the radar is a pretty good reason to drop FF altogether, it looks as if they fail to understand the difference between shipping software and getting me hooked on some service that I am not even aware of existing. And on top of that re-enabling their telemetry when it was explicitly disabled. That really takes the cake.
- kevingadd 5y agoThis is caused by HTTP3. The only way for you to have never experienced this issue would be if Mozilla never integrated HTTP3, which isn't going to happen because the major service providers like Google and Cloudflare are adopting it. Telemetry and updates happening to use HTTP3 merely pushed the issue to the foreground, it would have happened eventually and possibly in a way that got fixed more slowly because it was happening intermittently and only to visitors of obscure websites. Switching to a browser without telemetry and automatic updates won't protect you from this kind of network stack bug.
- jacquesm 5y agoI do not want a centralized service that my browser connects to for any reason, and HTTP3 sounds like a lot of trouble for very little gain. You argue that it wasn't an automatic update: I am pretty sure that the first install on this machine did not have HTTP3 support and that automatic updates pulled it in, end of story right there. As for the telemetry issue: that's even worse because telemetry and all other forms of communication with the mothership other than automatic updates have been disabled on this machine, and has been silently re-enabled without my consent. That's a pretty gross violation of trust, and if that in turn causes me to lose a morning then that makes it even worse. Fortunately, today is not an interview day, but if this had happened two days ago the consequences would be terrible. Finally, automatic updates would ideally just fix security issues and not introduce new, possibly unwanted functionality. I carefully select my tools for their purpose and I absolutely hate this brave new world where critical stuff suddenly stops working because some company could not be bothered to take their end users' interests a bit more serious. Google and Cloudflare were not implicated here, it was FireFox that stopped working, Chrome still functioned just fine.