[tor-bugs] #3978 [Tor Browser]: Better TBB about:config settings(?); re: browsing and loading speed, etc.

Tor Bug Tracker & Wiki torproject-admin at torproject.org
Sat Sep 10 01:23:34 UTC 2011


#3978: Better TBB about:config settings(?); re: browsing and loading speed, etc.
-------------------------+--------------------------------------------------
 Reporter:  joyton       |          Owner:  mikeperry
     Type:  enhancement  |         Status:  new      
 Priority:  normal       |      Milestone:           
Component:  Tor Browser  |        Version:           
 Keywords:               |         Parent:           
   Points:               |   Actualpoints:           
-------------------------+--------------------------------------------------
 Hello,

 I have been testing the following !about:config settings (specific to
 Firefox 6) for a couple of weeks. I have used very similar settings for
 TBB since Firefox v3.x.x. These settings do seem to (very noticeably)
 speed up browsing, maybe some of these can be migrated into official TBB
 releases?

 The only setting I think may do well with a bit of tweaking is
 nglayout.initialpaint.delay, I doubled the Firefox defualt of 250 ms.
 Doing so seems to (noticeably) increase total page load time, while
 (unnoticeably) reducing time to first load on page.

 I tried to test these settings in TBB vs. vanilla TBB but I don't know how
 to configure Tor to use the same circuit for all speed tests.

 Relevant links:

  1. [http://techlogon.com/2011/09/06/how-to-speed-up-firefox-6-tweaking-
 guide/ How To Speed Up Firefox 6 Tweaking Guide]
  1. [https://trac.torproject.org/projects/tor/wiki/doc/FireFoxTorPerf
 Hacking Firefox for Maximum Performance with Tor] (some settings are
 outdated and some settings are missing)

 '''user.js''' (placed in ''...\Tor
 Browser\!FirefoxPortable\Data\Profile'')

 // Spell check works with all fields
 user_pref("layout.spellcheckDefault", 2);

 // default is 250 ms, longer wait time means faster total page load time,
 but slower initial page loading.
 user_pref("nglayout.initialpaint.delay", 500);

 // Stops the display of placeholders while images are loading to speed up
 the page. Default is True
 user_pref("browser.display.show_image_placeholders", false);

 // Sets the maximum number of times the content will do timer-based
 reflows to 5. After this, the page will only reflow once it is finished
 downloading. This is a new value. Default is -1 (no limit)
 user_pref("content.notify.backoffcount", 5);

 // Sets the minimum amount of time to wait between periodic reflowing of
 the page to 0.12 seconds – stops Firefox becoming slow by reflowing too
 frequently. This is a new value. Default is 120000
 user_pref("content.notify.interval", 120000);

 // Sets the maximum amount of time Firefox will be unresponsive while
 rendering pages – set to 3 times the content.notify.interval above. This
 is a new value. Default is 360000
 user_pref("content.max.tokenizing.time", 360000);

 // Ensures Firefox does not reflow pages at an interval any higher than
 that specified by content.notify.interval above. This is a new value.
 Default is True
 user_pref("content.notify.ontimer", true);

 // Sets Firefox to interrupt parsing a page to respond to UI (user
 interface) events to prevent it becoming unresponsive until parsing is
 complete. This is a new value. Default is True
 user_pref("content.interrupt.parsing", true);

 // Sets the number of microseconds of inactivity that puts Firefox into
 low frequency interrupt mode. This is a new value. Default is 750000
 user_pref("content.switch.threshold", 750000);

 // Disables IPv6 DNS lookups to prevent a significant delay with poorly
 configured IPv6 servers.
 user_pref("network.dns.disableIPv6", true);

 // This preference takes values between 1 and 255 inclusive, directly
 corresponding to the maximum number of HTTP keep-alive connections the
 application can have open at once to the proxy server. Default is 8.
 user_pref("network.http.max-persistent-connections-per-proxy", 16);

 // Increases the maximum number of persistent connections per server which
 can help speed up loading of multimedia rich sites. This settings must be
 equal to, or greater than, "Network.http.max-persistent-connections-per-
 proxy". Default is 15.
 user_pref("network.http.max-connections-per-server", 16);

 // Amount of time in seconds to keep keep-alive connections alive. Default
 is 115 seconds.
 user_pref("network.http.keep-alive.timeout", 600);

 // [! Not needed: !TorBrowser already has correct configuration] Use keep-
 alive connections whenever possible.
 //user_pref("network.http.proxy.keep-alive", true);

 // [! Not needed: !TorBrowser already has correct configuration] Stops
 Firefox automatically prefetching (loading) the contents of pages linked
 to by the page you are viewing – in most cases you will never visit those
 links so this time is wasted and it is a security risk because you are
 unwittingly downloading (possible virus/adult) content only linked to by
 the current page but which you have not chosen to load. Default is True.
 //user_pref("network.prefetch-next", false);

 // [! Not needed: !TorBrowser already has correct configuration] Can send
 multiple requests to a server together in order to speed up loading of
 webpages. This is not supported by ALL servers – some servers may even
 behave incorrectly if they receive pipelined requests. Default is False
 //user_pref("network.http.pipelining", true);

 // [! Not needed: !TorBrowser already has correct configuration] Can send
 multiple requests to a server together in order to speed up loading of
 webpages. This is not supported by ALL servers – some servers may even
 behave incorrectly if they receive pipelined requests. Default is False
 //user_pref("network.http.pipelining.ssl", true);

 // [! Not needed: !TorBrowser already has correct configuration] Can send
 multiple requests to a server together in order to speed up loading of
 webpages. This is not supported by ALL servers – some servers may even
 behave incorrectly if they receive pipelined requests. Default is False
 //user_pref("network.http.proxy.pipelining", true);

 // [! Not needed: !TorBrowser already has correct configuration] Sets a
 maximum number of multiple requests that can be pipelined to prevent
 overloading the server. Higher values will cause a delay before the first
 request completes but will make the last request complete sooner. Higher
 values will also cause more of a delay if a connection fails. Default is
 4.
 //user_pref("network.http.pipelining.maxrequests", 10);

-- 
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/3978>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list