BlogAid - Help Support The Asian Earthquake and Tsunami Appeal

Make Firefox Faster

December 26, 2004 | Category: Open_Source | derek

After you get past the beginner stage with Firefox, try this "power-user" trick to make it download pages faster by allowing multiple connections so it can download more than one file at a time. It's only useful for broadband users, so if you're still on dial-up you can just skip this one for now.

Here's something for broadband people that will really speed Firefox up:

1.Type "about:config" into the address bar and hit return. Scroll down and look for the following entries:

network.http.pipelining network.http.proxy.pipelining network.http.pipelining.maxrequests

Normally the browser will make one request to a web page at a time. When you enable pipelining it will make several at once, which really speeds up page loading.

2. Alter the entries as follows:

Set "network.http.pipelining" to "true"

Set "network.http.proxy.pipelining" to "true"

Set "network.http.pipelining.maxrequests" to some number like 30. This means it will make 30 requests at once.

3. Lastly right-click anywhere and select New-> Integer. Name it "nglayout.initialpaint.delay" and set its value to "0". This value is the amount of time the browser waits before it acts on information it receives.

If you're using a broadband connection you'll load pages MUCH faster now!

Visit Site | Email Entry

Comments

#1

There's an extension called "Tweak Network" that takes care of this.

Patrick (http://www.e.kth.se/~strang/blog/)

#2

except for the last tweak.

Josh

#3

Also, if like me, you are near always downloading things and using most of your bandwidth, it isn't really worth doing a tweak like this.

norgus

#4

http://users-guide.org/index.php?c=text&id;=29

ilustrated.

Jippy78

#5

Is this going to hammer the websites with requests or bandwith usage

Buddy Dolan

#6

It's true that the last tweak isn't included in "Tweak Network". It is after all not a network tweak ;).

Patrick (http://www.e.kth.se/~strang/blog/)

#7

So now I fucked up. I have a swedish version of FireFox and I made a new string instead of a integer (fucked up the translation). How can I erease the string I made?

Magnus

#8

Magnus: Just delete the setting and create it anew.

Wow, this is definitely faster.

Geof F. Morris (http://gfmorris.net/)

#9

Geof F. Morris of course I want to delete it. But how? I can't mark it and then press "delete" (nothing happens), on the "rightclick menu" there's no "delete" option.
If anyone know how to delete a string, please describe it here like you would do to a threeyearold. :D

Magnus

#10

No right-click on a Mac Powerbook. What's the keystroke equivalent of a right click? I tried just about everything, no luck.

zach

#11

Ctrl+Click is the equivalent of right clicking on a mac.

Derek (http://www.violetphoto.com/)

#12

Derrrr this tweak kicks ass. I knew there was a reason Ive been using this browser for the past 2 years.

Cleric (http://www.smileycorp.tk)

#13

Great little tips, but only one problem, and that's that you're breaking servers by doing this. 3-5 requests is fine, but trying to do 30 requests at once puts some strain on the server. If two people try to access the same page at once with this set, that's 60 connections. Most httpd's are set to cut off after there are 100 connections made. So, 4 people with this set could not access the same site. I urge you to think things through before setting something like this and killing the websites you browse.

Robert Deaton (http://anothersadsong.com)

#14

Re: #13, Robert's comment.

Thirty connections at once is too much, I agree. Four or five is a friendly number. The benefits of pipelined requests can still be enjoyed with fewer simultaneous connections however.

Eli the Bearded

#15

Firefox Speed enhancement

Andrew Robinson

#16

This was already turned on in my Firefox, except for nglayout.initialpaint.delay

Also connections was only set to 8.

This made several slower sites like Orkut.com much faster.

basstech (http://www.inyourgrill.org)

#17

The "Tweak Network Settings" plugin sets the max connections to 16, which seems to work well. 30 does seem a bit high, and while it's true that httpd daemons terminate at 100 connections generally, there's generally multiple httpd daemons running. The box should handle it just fine, but I think going down to 16 is still high enough to reap speed benefits without being overbearing on the server. Besides, unless the site is seriously image-heavy, there's no reason 30 simultaneous connections would be made.

Brian Arnold (http://www.randomthink.net/)

#18

fork it. im setting mine to 500,000,000 connections. next ill need sharks with fricken lazer beams on their heads. then i can rule the internet......
MUAHAHAHAHAHAHAHAHAHHAHAHAHAHA!
AJ

AJtheRETARD

#19

Appears to work as well on Mozilla 1.7.x. Thanks
/can't get into that Firefox thing yet
//be kind, I drive an antique Harley

KoD

#20

wow.. this is awesome..

jonathan

#21

You should have only the config page open in firefox. and see this one on another browser. Otherwise Firefox might crash

Despingator

#22

I believe that Internet Explorer defaults to 4 sessions at once. From your article, it appears that Firefox only opens one session by default. Is this correct? The default setting doesn't seem very logical to me.

Travis (http://www.travsite.com)

#23

Regarding "Set "network.http.pipelining.maxrequests" to some number like 30. This means it will make 30 requests at once." and the subsequent comments regarding server spam, this is not correct. Pipelining makes consecutive requests on a -single- connection, hence "maxrequests" as opposed to "maxconnections". Normally the browser would request one object (such as an image) and then terminate the connection, repeat, and repeat until all of the needed objects had been downloaded. Pipelining simple causes it to take the same behavior using only one connection.

Anthony Gorecki

#24

To further add info: as #23 states (somewhat incorrectly), pipelining DOES NOT add more connections - the original post is utterly wrong, but is a way of streaming data on single connection.

There is AFAIK an in-built limit of 10 to network.http.pipelining.maxrequests - so setting it as 30 is ignored by Firefox anyway! That is for a GOOD reason - higher values are not better - they can cause complete page-loading failure and thus a longer loading time! Leave it at 4-6.

The above comment #23 is neither fully correct - pipelining is different from persistent connections he describes. Connections are persistent (don't close between each request) on a HTTP/1.1 compliant server irrespective of pipelining. Pipelining allows that single persistent connection to work more efficiently:

http://www.w3.org/Talks/9704WWW6-WebPerf/slide7.htm

NOTE: Opera has had this "tweak" for years, partly responsible for its reputation of being the fastest browser around.

ALSO: setting nglayout.initialpaint.delay to 0 will increase page-loading time - especially on older machines or slow connections. It causes the page to be redrawn earlier (so perceptually seems quicker), but the extra CPU load will slow the rendering down (potentially increasing total load time). Set it to 750 or 1000 on older computers or slow connections. The default of 250 is just fine IMO as a fair average.

Ian

#25

Sorry to double-post - but some more info for those interested in what pipelining actually is:

http://www.w3.org/Protocols/HTTP/Performance/Pipeline.html

http://www.mozilla.org/projects/netlib/http/pipelining-faq.html

Ian

#26

i wanted to follow up on magnus' question and see if there is any way to delete a string from the config page? highlight/delete doesn't work and there isn't a remove or delete option from the right click and/or tools menu.

stew

#27

about:config is just a rather inofficial interface to prefs.js open it with any text editor while Firefox isn't running and delete the appropriate line.

Frank

#28

The limit for network.http.pipelining.maxrequests is 8. Anything higher than 8 has the same effect as setting it to 8.

As others have said, changing this stuff is not guaranteed to make your Firefox faster. Making some things faster (e.g. the initial paint) slows other stuff down, and the ideal settings depend on the speed of your computer, the speed of your connection, and what web sites you are using. The defaults are set to strike a balance which should be ok for everyone. If you're going to change them, you should understand what they do, and see what settings work best for you.

To remove a pref from about:config, you can delete it from your prefs.js file manually as Frank said. Alternatively, if you choose "reset" in about:config, then quit Firefox, it won't be saved, so when you run Firefox again it will have disappeared.

michaell (http://www.michaellefevre.com/)

#29

These settings violate the HTTP protocol, and give you a speed boost by flooding the web server with 20-something connections for every single image and page request. There's a reason that they're not the default.

These settings will not only cause many web servers to have problems, but they can also make your web browser be mistaken for a flood attack, which will make the server add your IP to an "ignore" list. Stay away from these "optimized" settings, unless you know exactly what they do and how they work.

concerned

#30

concerned: You're confusing pipelining with the number of requests. As several people posted above, pipelining just changes how a single connection is used. You certainly won't "[flood] the web server with with 20-something connections for every single image...". It may not speed things upm it may tickle server side bugs cause pages to fail to load, but it won't flood the poor server. This change is generally safe and shouldn't cause any problems.

Alan De Smet (http://www.highprogrammer.com/alan/)

#31

these settings don't stick
once you change everything then close firefox it all resets back - or at least it is for me using pc version 1.0

any help would be appreciated

matt

#32

On my Linux box it flies at the 8 setting.
I reduced this from 20 and cant see any difference in speed. setting this really gave a speed hike.

Frank Smith (http://www.rokpacardiff.com)

#33

Just go download the extension "configuration mania", which gives you a GUI interface to many of the options in about:config without having to go through the manual crap. I've used it for quite awhile and love it. :)

Kevin (http://www.whatthefcuk.info)

#34

I typed in "about:config" and got shown the following warning by my Spy Stopper-

Blocked URL: www.about.com
Resource: Default

This page has been blocked by SpyStopper due to security
and Privacy concerns. Some Possible Reasons:

# Tracks or Profiles you.
# Gathers Private and Confidential Information from you.
# Installs software on your machine without your approval.
# Has Unsafe Content.
# No Content other than Advertisements and Popup windows.

If you are sure you want to visit this site, , please remove
the URL from the blocking list.

Steve

#35

Ooops, I just copied and pasted "about:config" instead of inserting it as about:config that is what caused the problem :)

Steve

#36

with reference to the original post, i have conferred with the designer of firefox(my dad) and he says if these settings violate the HTTP protocol, and give you a speed boost by flooding the web server with extra connections. this can be overcome by spreading peanut butter on the monitor of the networked machine then running and hiding. This is whats calle the standard modulus default.These defaults are set to strike a balance which should be ok for everyone. tatty bye!!!

bob

#37

"Set "network.http.pipelining.maxrequests" to some number like 30. This means it will make 30 requests at once."


This setting violates the HTTP protocol, and gives you a speed boost by flooding the web server with multiple connections for every single image and page request. There's a reason that they're not the default.


justanotheradmin

#38

How many people are going to say the same thing about it violating the HTTP protocol? And jeez, it sounds like you're accusing someone of raping a kitten or saying "bill gates ain't so bad" or something. Firefox actually limits it to 8 requests, max, so 30 is a misnomer, and I can't think of all that many things that don't violate the HTTP protocol one way or another.

The simple fact is, it's a speed boost with some tradeoffs that some people are willing to live with; it's not going to destroy the internet because Firefox is a marginal browser, and this tweak is only going to be applied by a small number of the people using it. Personally, I haven't noticed any real speed boost since I changed it, but I'm on a pretty speedy workstation and a T1, so even rendering time is usually minimal... and I haven't tried it at home yet. Too busy playing World of Warcraft :-)

JC (http://www.thelionsweb.com/weblog)

#39

What kind of peanut butter?

Doug

Doug

#40

Someone posted the pipelining thing on a forum along with this:

network.http.max-connections : 64
network.http.max-connections-per-server : 21
network.http.max-persistent-connections-per-server : 8

and this:

browser.tabs.showsinglewindowmodeprefs : true

Can anybody please tell me what that stuff does?

Mark

#41

Yo, which mod do i need to make, to alow me to download more then 2 files from the same server @ the same time? currently firefox only lets me download 2 @ 1 time

Thx

Karan Panchal

#42

@41:

I think it's a setting from the webservers you're downloading from, i don't think it has anything to do with firefox,

if I'm wrong,pls let me know, bcause Icould use the "fix" too :)

nick

#43

hey this is amazing thanks guys

usayd (http://usayd.com)

#44

Before doing these changes, read: http://weblogs.mozillazine.org/asa/archives/007164.html

dave

#45

After making these tweaks, I noticed Firefox timing out consistently on a good amount of the websites I visit. After un-tweaking the tweaks, everything was back to normal.

SocialChameleon

#46

r.e. #45

It has been the case that support for pipelining has been dropping across the web. The most likely culprit are the recent load-balancing mechanisms which may not respect the order of the requests and thus break pipelining.

It seems that few newer software developers really bother to test their full compliance to HTTP/1.1, as IE and Firefox have pipelining disabled by default - the vicious circle completes and support for this advantageous mechanism is dropping not improving...

This has forced Opera to rewrite the heuristics for how they toggle pipelining per server for their V8.0 - they have observed more problems with pipelining than ever before.

The only hope is that as Firefox market share increases, developers may start to realise the advantages to finally supporting something that should have been implemented MANY years ago. Pipelining can clearly reduce the amount of packets per connection, and thus allow servers to handle more concurrent connections (it is ironic that a mechanism that should help load-balancing is being broken by that very class of software...)

Ian

#47

welcome to like 8 months ago! hahah!

joe

#48

For a non-techie medical writer who sticks his head into a lot of websites for research, this Firefox speed-up trick works nicely. So what's the bottom line on the value? Can I leave it on 30 and sleep at night, or do I set the value down to 8. I don't want to contribute to destruction of cyberenvironment. Thanks. Marty

Martin Zucker

#49

http://www.tweakfactor.com/articles/tweaks/firefoxtweak/4.html

Mouse

#50

Wow, amazing how many stupid comments are made by people who don't know what the fark they're talking about. HAHAHA!

Shag

#51

hi

Alfred

#52

You can also download this which changes more settings:

http://www.softpedia.com/get/Tweak/Browser-Tweak/Mozilla-Optimizer.shtml

downforce

#53

I have all kinds of tips here:
http://tinyurl.com/5csxt

You'll find a link to my extensively commented user.js file that you can just download and pop into place.

Scott Kingery (http://tinyurl.com/3fdsf)

#54

Okay, I did the tweaks, but how do i make everything back to the default settings again??

Alaa

#55

Regardless of what any of the comments say, this enhancement works. I use a cheesey dial-up through a no-name ISP and my pages load much, much faster (except https://... pages for some reason).
Some of the previous pages which used to take close to a minute to load are now finished in less than 5 seconds.

OldRetiredGeek

#56

Hi everyone, i tried ALL these tips for making FIREFOX faster, but when i close the browser down and open it up again, ALL the settings are back to normal!

how do i do it so they stay to the new faster ones ?

Waynester (http://www.wayneharris.co.uk)

#57

forgot to say i have 2 MEG Broadband DSL modem etc

Waynester (http://www.wayneharris.co.uk)

#58

bah, fire fox sucks... get opera

http://www.worstluck.com

vacantmind (http://www.worstluck.com)

Post a comment










Remember personal info?



  

Email this entry to a friend








Email information is not stored by us and is only used to send out the email.

« A Beginner's Guide to Firefox | FG Isn't Dead... »