Live data from Hacker News

Site Isolation in Firefox

blog.mozilla.org

61–70 of 118 posts

Re: Site Isolation in Firefox

#61

In case anyone is wondering about the stability I've been running this for a couple of months now and stability has gotten pretty darn good. I'm excited to see it go into stable builds soon.

Thank you for this feedback. Firefox Fission team appreciates it. If you see any problems, please file using this template: https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&bug_... .

Re: Site Isolation in Firefox

#62
This is fantastic work that will greatly improve the security of Firefox; big thanks to those who have worked on it. Is there data on what effect it will have on memory use?

One of the primary reasons I use Firefox is that it uses significantly less memory than Chrome, and the entire OS seems to function better as a result (I've seen the most stark difference on macOS). I had been under the impression that most of the reason Chrome uses so much memory is its multiprocess model.

I understand that maybe we need to give that up for better security, but it would be nice to know if that's indeed the tradeoff being made here.

Re: Site Isolation in Firefox

#63
How good is Firefox sandboxing these days? Last time I looked it was years behind Chrome's, but site isolation is definitely a step in the right direction.

It would be sad if one day Chromium removed Manifest v2 and there was no alternative.

Re: Site Isolation in Firefox

#64
post #3

Can anyone explain the relationship to the Firefox "Electrolysis" initiative better than this[0]? It looks like Electrolysis was just making the browser kernel IPC layer and now Fission is actually divvying up the processes by origin. [0]: https://wiki.mozilla.org/Electrolysis#Thanks

hi, co-author of the blog post here. There is a more detailed blog post explaining how Site Isolation is better than the Electrolysis architecture here - https://hacks.mozilla.org/2021/05/introducing-firefox-new-si... (also linked to from the security blog post). Hope this is helpful!

I enjoyed the illustrations, but you should try looking at your article in Firefox for Android: all pictures overflow to the right and it's not even possible to scroll horizontally to see the rest.

Re: Site Isolation in Firefox

#66

Earlier quoted context omitted.

Chrome's policy is pretty much the same; while it can generate a process-per-tab under most conditions, the guarantee it actually makes (in modern versions of Chrome) is that sites (including different-origin iframes) are isolated into different processes. They use the PSL to determine which sites constitute a different origin, just like Firefox does.

I don't know if "most conditions" is even true. Even when it's only running a handful of processes and I have plenty of ram free I cannot convince it to use more than one process for twitch tabs.

I think there are some restrictions on tab "navigation source". (Something about a fairly obscure JavaScript feature that links tabs opened via click navigation, if I recall correctly.)

Does this also happen when you type the Twitch URL in a new tab?

Re: Site Isolation in Firefox

#67
post #4

When Chrome was new and shiny, I used it for a time. Then, the first time I found myself needing to kill Chrome because it was completely locked up, I found myself staring at a wall of chrome processes in the task list, not knowing which one I needed to kill. At the time, I thought the idea of a separate process for each tab was silly. Though, with Firefox moving towards this model, I guess the engineers at Google we…

Run `top`, sort by CPU or RES, depending on want is overspent.

If Firefox is still somehow responsive, open about:performance and identify the CPU-hungry tab(s), then close them.

Re: Site Isolation in Firefox

#68

Any news about the memory usage overhead this brings? The original design goal when the work on site isolation started was 1 GB overhead for a browsing session with 100 separate origins (can't remember how many tabs that was supposed to correspond to, although due to iframes it was definitively less than 100 tabs). Was this goal reached in the end, or perhaps even surpassed, or missed after all? I guess this also mak…

I think the overhead is something more like 15MB per process, on Windows. It is higher on other OSes, due in part to the way they load executables. In practice, the total overhead is less bad than you might expect, because people usually don't have that many unique sites open. Telemetry shows that unique sites per tab decreases as the number of tabs increases.

It really depends on what web sites you have open. If you have a single tab with an ad-laden news site, the overhead will be high, but if you have a bunch of Google Docs tabs open, there's no overhead.

Re: Site Isolation in Firefox

#69
post #6

This provides more technical details: https://hacks.mozilla.org/2021/05/introducing-firefox-new-si... >, which should be more interesting to HN than a marketing announcement. In particular, it seems that "site" isn't precisely defined. It seems to be based on domains, but backed by a human-curated list of "sites": https://github.com/publicsuffix/list >. So it's different than Chrome's "every webpage gets a separate p…

The public suffix list is also used by other browsers to determine whether resources are cross origin (see below), not just by Firefox. So, I think it's a pretty authoritative list, and also consider that domains are added by formal request of the domain holder, not as a result of someone's curation.

That list is the reason why CORS behaves differently e.g. across two subdomains like [subdomain].herokuapp.com (requests are considered cross origin) in comparison with two subdomains of the type [subdomain].[myowndomain.ext] (requests are considered same origin)[1] - the reason for this difference is that herokuapps.com is part of that list.

[1] unless you added your own domain to the public suffix list.

Re: Site Isolation in Firefox

#70
post #56

Earlier quoted context omitted.

On Firefox you can go to `about:processes`. It lists tabs by process, and includes the PID (on Linux; no idea about other platforms). You can also directly kill tabs and processes from there.

That's super useful on a resource strapped system. Wish I knew this earlier.

For a resource-constrained machine, uBlock Origin + Auto Tab Discard save a lot of resources and keep a window with 100 tabs quite usable.
Post reply on HN