Internet Explorer and Connection Limits
From time to time, I've heard the question: "Why can IE only download two files from the same site simultaneously?"
Some more savvy users observe that this limitation probably makes sense in dialup cases where bandwidth is constrained or when lots of small files are being downloaded, since the TCP/IP slow start algorithm comes into play.
But for those of us lucky enough to be on broadband, this limitation can be annoying. If I want to download a large number of large files, I have to sit around and wait for them to complete, two-by-two. Why does IE behave this way while some other browsers do not?
It turns out that this is a case where IE strictly follows the standards-- in this case, RFC2616, which covers HTTP1.1. As noted in the RFC:
Clients that use persistent connections SHOULD limit the number of simultaneous connections that they maintain to a given server. A single-user client SHOULD NOT maintain more than 2 connections with any server or proxy.
Saavy web developers can take this connection limit into account and deliver their data from multiple domains, since the browser will open up to two connections per domain. You can see this trick on pages like Office Online Templates using Microsoft Fiddler or another network monitoring tool. In this case, two domains (office.microsoft.com and i.office.microsoft.com) split the load, permitting up to four simultaneous connections.
If you'd like to experiment with higher connection limits inside IE, have a look at https://support.microsoft.com/kb/183110. Note that changing this setting violates HTTP RFCs, and hence might impact compatibility with servers and proxies.
-EricLaw
PS: Another web-performance tip: When generating hyperlinks, always include a trailing slash if possible. For instance, navigating to https://msdn.microsoft.com/ie takes one more roundtrip than https://msdn.microsoft.com/ie/. When the browser navigates to the /ie url, the server merely sends down a 301 to the /ie/ url. Both links work, but the second version is faster.
Updated title - 4/12/05
Comments
Anonymous
January 01, 2003
IE strictly follows standards?
:-)Anonymous
January 01, 2003
But IE doesn't support HTTP pipelining, and this limit was chosen with fully-featured HTTP/1.1 clients in mind.
HTTP/1.1 lacking support for pipelining is even slower than HTTP/1.0 (http://www.w3.org/Protocols/HTTP/Performance/Pipeline.html)Anonymous
January 01, 2003
So, this behaviour has significant impact to end user experience. And you chose to follow standards? Another amazing surprise from Microsoft.Anonymous
January 01, 2003
Eric:
If you read RFC 2119 (http://www.faqs.org/rfcs/rfc2119.html), you'll notice the following definitions for "SHOULD" and "SHOULD NOT"--
3. SHOULD This word, or the adjective "RECOMMENDED", mean that there
may exist valid reasons in particular circumstances to ignore a
particular item, but the full implications must be understood and
carefully weighed before choosing a different course.
4. SHOULD NOT This phrase, or the phrase "NOT RECOMMENDED" mean that
there may exist valid reasons in particular circumstances when the
particular behavior is acceptable or even useful, but the full
implications should be understood and the case carefully weighed
before implementing any behavior described with this label.
If you allowed more than 2 transfers at once you would not be violating the RFC. If, on the other hand, the RFC had used the words "MUST" and "MUST NOT", I'd agree with you. ;)Anonymous
January 01, 2003
"Should" is incompatible with the word "strictly."
This article lowers the credibility of the IE team even further.Anonymous
January 01, 2003
So IE follows standards when it suites them, but not other times? Is this the reason why you can not have two downloads at a time, or is this a timely excuse to not allowing this. Most standards set forth are ignored and broken by Microsoft, and you expect us to believe that Microsoft strictly follows standards in this case? I think this is an excuse to why this is not allowed, probably in a cheap attempt to plug up some security whole found in IE.Anonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
As far as I know, the simultanous connection limit in the RFC has been chosen to prevent DOS attacks. Imagine what happens when a client is given the oportunity to open a huge amount of connections in the same time. Correct me if I am wrong here.Anonymous
January 01, 2003
From RFC2616:
"one that satisfies all the MUST level requirements but not all the SHOULD level requirements for its protocols is said to be "conditionally compliant."
So, are those other browsers properly representing themselves as "conditionally compliant" to HTTP specifications?Anonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
Until I've read this article I thought this limitation is a webserver limitation. Didn't test it too much (may be a server limitation on the site I've tried) but Firefox has the same limitation (at least the default installation I'm using).
Now: I'm not a Microsoft fan, I haven't used IE for anything else then testing in the past year or so, but replies like this:
> This article lowers the credibility of the IE team even further.
....
I'm speechlessAnonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
DaveP: SHOULD isn't a recommendation. You're mixing IETF-standards lingo and English.
A "SHOULD" is really: "You REALLY, REALLY, REALLY have to have a really good reason for violationg this clause".
And making users downloads faster isn't a really, really, really good reason.
Protocol standards (like HTTP) are a lot more persnikity than rendering standards (like SGML/HTML) - the consequences of violating HTTP protocol standards are far more severe.
That's why the default is to abide by the standard.Anonymous
January 01, 2003
> What's interesting is that a lot of people who want IE to follow standards REALLY mean that they want IE to follow standards UNLESS it's a 'nicer' experience to go against the recommendations.
What on earth are you talking about? Nobody is saying that Microsoft should ignore this part of the specification.Anonymous
January 01, 2003
Pornel had it right, just as one "should" only allow 2 simutanious connections...
"HTTP implementations SHOULD implement persistent connections."
MS can't claim that they do something to "follow the standard" when they don't follow important portions of it. This would be like claiming they support PNG when they don't support 32b PNG transparency.Anonymous
January 01, 2003
<<"HTTP implementations SHOULD implement persistent connections." >>
... And Internet Explorer does implement persistent connections. What are you getting at?Anonymous
January 01, 2003
What annoys me about IE is how the 2 connection restriction applies even when a Connection: Close header is sent.
For example, suppose I am downloading two large files from a site. Both of the connections have a Connection: Close header, but IE refuses to load any other pages from the site for the duration of the downloads. This is very confusing for users as the site appears to have gone down, and it's pretty annoying to have to use a separate host or port number to work around this. It also causes even more trouble while writing software that uses XMLHttpRequest because javascript only allows those requests to target the same server that generated the page.
My interpretation of the passage in RFC 2616 is this: "A client should never have more than 2 connections which are not currently in the middle of a request (connections that are persisting) to a single server."Anonymous
January 01, 2003
@LarryOsterman:
<< A "SHOULD" is really: "You REALLY, REALLY, REALLY have to have a really good reason for violationg this clause". >>
You're using your own definition of what "SHOULD" and "SHOULD NOT" infer. RFC 2119 (http://www.faqs.org/rfcs/rfc2119.html) spells out what those mean, and it doesn't say "You REALLY, REALLY, REALLY have to have a really good reason for violating this clause". It only says the reasons for violating the clause must be understood/considered. In other words: it is not a requirement in order to be in compliance with the RFC.Anonymous
January 01, 2003
But why do people that post comments are always against IE ?
I'm a webmaster among many others, dealing with 70'000 people a day. I do like IE, altough it has some drawbacks, so do Firefox (I'm currently using Maxthon for tabbing under IE, because I can bear Firefox, whereas I'm a developer, following the W3C rules).
So now, people are angry because IE follow the rules ? Hey, guys, we talk about HTTP, which mean Hyper TEXT tranfer protocol ! So you're dealing with Text files (HTML, XML, XHTML and so on) ! Have you ever run a web server ? Be overloaded because one run HTTTrack on your web site ?
So HTTP is for HTML, not for larges files. FTP is there for files, remember, it means FILE transfer protocol !
So don't worry, if you don't like IE, just go away, run Firefox, be "secure" as it claims (security issues go out every two weeks, nevermind ;o), and stop being painfully aggressive.
Sorry for my bad English, and I _personaly wait for the great IE to come, IE 7, reading every article of this wonderful blog, and hope it would be as great as it is written here.
Best regards to understanding people.Anonymous
January 01, 2003
"When generating hyperlinks, always include a trailing slash if possible."
So why is the example link the only one in this article that has a trailing slash? ;)
Thats what you get from oversimplifying things ... the slash is only needed for foldersAnonymous
January 01, 2003
Edge: "[RFC 2119] only says the reasons for violating the clause must be understood/considered."
Yes. Microsoft understood/considered the reasons and decided it wasn't something worth doing. What is your point?
And, as it is a SHOULD and not a MUST, they provide a mechanism for changing the behaviour - mentioned in the KB article linked above.
In my opinion IE does the right thing here. If you don't like the standard, Microsoft's implementation is not the place to direct your comments at.Anonymous
January 01, 2003
<<Thats what you get from oversimplifying things ... the slash is only needed for folders >>
What part of "if possible" didn't make sense to you?
The whole point is that the slash ~isn't~ required for folders, but it's faster if you use it, because you avoid the roundtrip for the 301.Anonymous
January 01, 2003
Quote: "It turns out that this is a case where IE strictly follows the standards"
I think the main problem people are having with this article (myself included). Is that there is so much stuff about I.E not following standards, that when they DO follow standards it seems almost comical/hypocritical.
For instance in a previous blog "IE and Standards", MS stated...
Quote:
"When we shipped IE 6.0, we finally fully supported CSS 1, and had some pieces of CSS2 implemented as well."
Which got the immediate reply of...
Quote:
"By 'fully supported CSS 1', do you mean 'mostly passed the W3C's basic test suite for CSS1', or do you mean 'had some sort of detectable behaviour for every feature of CSS1'? Because I KNOW you don't mean 'correctly supported all of CSS 1'"
I completely agree with this statement! So if MS are telling us CSS1 was "fully supported" in IE6 even though it wasnt, then maybe the reason they have given us for the 2 download maximum is untrue as well?!
Basically, not everything thats told to us is the 100% gospel truth.
Dont believe everything you hear and read.Anonymous
January 01, 2003
"It turns out that this is a case where IE strictly follows the standards-- in this case, RFC2616, which covers HTTP1.1. As noted in the RFC:..."
so you admit in other cases you don't? i find that ironic seeing this blog tried to deny that CSS was a proper standard 5 enties ago and that leaked info suggests there isn't proper support for CSS2 in IE7. If IE7 ships with longhorn in 2006, 5 years after XP shipped with IE6(as i recall it did?) then we might be stuck coding for a browser that doesn't support CSS2 properly until 2011?
ok, went a little off tpoic there :) what i wanted to say about multiple downloads is that it wouldn't be so bad if there was a way to queue downloads so you know which links you've already clicked. then if you really want to have more than 2 concurrent downloads you can get a download managerAnonymous
January 01, 2003
I've always wondered why I've only been able to download a maximum of 2 large files from the same website. I thought that this was a limit applied on the...Anonymous
January 01, 2003
Also, Internet Explorer doesn't seem to be able to download files bigger than 2GB over http or ftp. Ncftpget and curl seem to be two of the few ftp and http agents with the ability to download these types of files.Anonymous
January 01, 2003
May I ask whether it is necessary to physically add a 301 redirect from www.mydomain.com to www.mydomain.com/ to avoid seeing 301 errors in my Web stats... or is that superfluous . I read on one of the main SE forums someone suggested doing this ... or have I misunderstood the direction .. the reference to doing such a redirect was referenced in my last post: http://www.marketingdefined.com/blog/2005/04/fix-established-sites-drop-in-rankings.html
Please indulge me by clarifying the above.
Also, I would be most appreciative if anyone expert enough at this Blog could tell me why I cannot see any background or outline colours in my IE6 browser .. the colors show up fine when checking my web design pages in Netscape, so it cannot be a display problem. I have the necessary "ticks" in my IE "Advanced" options, and have not ticked the pertinent column in "Accessibility" - so what could be causing the lack of background colors and outline colors only in the IE6 browser.
I am desperate to get this problem fixed .. and would be so grateful for any help.
Many thanks
Roseanne
my email addy is: roseanne@marketingdefined.com if some generous web designer out there could enlighten me on the 301 and lack of color display.Anonymous
January 01, 2003
If I want to download multiple files (usually large files), I will simply open up a new browser exe. Opening additional windows via the File > New > Window does not increase the limit, but starting up an additional copy of IE does.
-AndrewAnonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
Jim,
Many thanks for the clarification of the trailing slash and 301 redirects.
The comment about the lack of color was directed to the IE6 blog, for one main reason ... the fault has nothing to do with my CSS design skills .. the colors in the IE browser do not show up even under ordinary web surfing/browsing .. I can surf to any page, and will not see the outlines of tables, background colors etc. For example, with pictures such as a .gif or .jpeg -the colors in those show up fine .. but no outline colour or background colors come up at all for the rest of the page.
I've had this problem for some 8 -9 months, and only realised it was unique to IE, when I downloaded the Netscape browser, to ensure my web design pages show up correctly.
I am 100% certain this is not CSS related .. and would so much appreciate the right direction to turn to. My computer was under warranty, but it is nothing to do with the hardware/software as far as the manufacturer's Customer Support is concerned and they recommended I get in touch with IE direct.
If there is anywhere you could point me to I would be most grateful ... I have posted at Forums and many other places, but have had no luck with any responses.
Many thanks for your time to review this.
Roseanne
email: roseanne at marketingdefined.comAnonymous
January 01, 2003
> IE strictly follows standards?
Not if the Web Standards Project's Acid2 test - http://webstandards.org/act/acid2/ - is any indication. Other browsers do not-so-well, but IE is outright comically bad at it.Anonymous
January 01, 2003
> Also, I would be most appreciative if anyone expert enough at this Blog could tell me why I cannot see any background or outline colours in my IE6 browser
I've got the same problem and I wasn't able to find any solutions. If anyone has the solution, plz send it to me also.
info@vircos.nlAnonymous
January 01, 2003
> Also, I would be most appreciative if anyone expert enough at this Blog could tell me why I cannot see any background or outline colours in my IE6 browser
I've got the same problem and I wasn't able to find any solutions. If anyone has the solution, plz send it to me also.
info@vircos.nl
Virco
---
Finally found the solution, the solution can be found on:
http://support.microsoft.com/?kbid=277008Anonymous
January 01, 2003
I'd be interested to hear about the pipelining. Has IE team measured whether it would really provide considerable speed up?Anonymous
January 01, 2003
The comment has been removedAnonymous
May 21, 2006
PingBack from http://www.thinkvitamin.com/features/webapps/serving-javascript-fastAnonymous
August 02, 2006
PingBack from http://my.donews.com/htmlor/2006/08/03/serving_javascript_fast_chinese/Anonymous
August 02, 2006
让javascript跑得更快
作者:Cal Henderson
下一代wed应用让javascript和css得堪大用。我们会告诉你怎样使这些应用又快又灵。
建立了号称&ldquo;Web 2.0&rdquo;的应用,也实现了富内容(rich...Anonymous
August 10, 2006
建立了号称“Web 2.0”的应用,也实现了富内容(rich content)和交互,我们期待着css和javascript扮演更加重要的角色。为使应用干净利落,我们需要完善那些渲染页面的文件,优化其大小和形态,以确保提供最好的用户体验——在实践中,这就意味着一种结合:使内容尽可能小、下载尽可能快,同时避免对未改动资源不必要的重新获取。Anonymous
October 22, 2006
PingBack from http://www.jiehoo.com/2006/10/23/ie%e7%9a%84%e5%b9%b6%e5%8f%91%e8%bf%9e%e6%8e%a5%e8%af%b7%e6%b1%82%e9%99%90%e5%88%b6%e5%af%bc%e8%87%b4%e7%9a%84%e9%97%ae%e9%a2%98/Anonymous
October 30, 2006
PingBack from http://soci.hu/blog/index.php/2006/10/30/weboldalak-letoltesi-sebessegenek-gyorsitasa/Anonymous
November 01, 2006
PingBack from http://www.ourlinux.net/?p=50Anonymous
November 06, 2006
PingBack from http://ihower.idv.tw/blog/archives/1517Anonymous
November 26, 2006
PingBack from http://www.itezone.com/blog/2006/11/26/%e8%ae%a9javascript%e8%b7%91%e5%be%97%e6%9b%b4%e5%bf%ab/Anonymous
February 24, 2007
PingBack from http://www.developercast.com/?p=234Anonymous
May 25, 2007
PingBack from http://www.sourcelog.net/?p=71Anonymous
June 13, 2007
PingBack from http://www.cogitatefor.com/jskinwordpress/?p=8Anonymous
August 20, 2007
PingBack from http://enissue.com/2007/08/13/%e8%ae%a9javascript%e8%b7%91%e5%be%97%e6%9b%b4%e5%bf%ab/Anonymous
December 13, 2007
PingBack from http://www.donevii.com/post/9.htmlAnonymous
March 04, 2008
PingBack from http://tony.eop.com.cn/?p=138Anonymous
March 06, 2008
PingBack from http://www.simlan.com.cn/post/122.htmlAnonymous
March 19, 2008
现在很多中小网站(尤其是 Web 2.0 站点) 都允许用户上传图片,如果前期没有很好的规划,那么随着图片文件的增多,无论是管理还是性能上都带来很多问题。就自己的一点理解,抛砖引玉,以期能引出能具价值...Anonymous
March 22, 2008
PingBack from http://wayutou.com/archives/7Anonymous
April 01, 2008
PingBack from http://1985.feb27.cn/archives/the_statistics_of_twt_20080402/Anonymous
April 03, 2008
InternetExplorer浏览器在同一时刻只能从同一域名下载两个文件。 至于原因请见MSDNBlogs:《InternetExplorerandConnectionLi...Anonymous
June 04, 2008
PingBack from http://www.cache8.org/?p=33Anonymous
June 04, 2008
转自:http://blog.htmlor.com/2006/08/03/serving_javascript_fast_chinese/作者:CalHenderson 下一代web应用让java...Anonymous
June 05, 2008
zzreview:Yahoo!在frontendperformancetuning方面的确走得领域的前面,总结出来的优化rules大部分都能够给我们带来灵感,然后让我们用于我们自己的网站性能调...Anonymous
June 06, 2008
原文来自:http://www.space007.com/post/129.htmlAnonymous
June 16, 2008
Here I will be going in-depth on how a browser maintains HTTP connections with the Server. SomethingAnonymous
June 24, 2008
PingBack from http://blog.netpro.ru/index.php/2008/06/25/bystryj-bystryj-javascript/Anonymous
June 28, 2008
PingBack from http://www.wokaoo.com/2008/06/%e9%97%b2%e8%b0%88-web-%e5%9b%be%e7%89%87%e6%9c%8d%e5%8a%a1%e5%99%a8/Anonymous
June 30, 2008
高性能网页开发的14条军规 zzreview:Yahoo!在frontendperformancetuning方面的确走得领域的前面,总结出来的优化rules大部分都能够给我们带来灵感,然...Anonymous
July 16, 2008
ChineseDistributedPictureUploadstoragesolutionsIEbrowserunderthesamemulti-pagepictureshow...Anonymous
August 19, 2008
PingBack from http://www.space007.com/200808/specificatin-3-2/Anonymous
August 25, 2008
PingBack from http://www.51tob.com/?p=98Anonymous
November 09, 2008
PingBack from http://www.space007.com/200811/%e6%8f%90%e9%ab%98%e7%bd%91%e7%ab%99%e9%80%9f%e5%ba%a6%e7%9a%84%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/Anonymous
December 10, 2008
PingBack from http://www.thinkvitamin.com/single/?p=161Anonymous
December 10, 2008
Here are 3 reasons to make fewer web request calls and why it benefits your website: Browser ConnectionAnonymous
December 15, 2008
PingBack from http://590a.cn/index.php/2008/12/wangzhansudu.htmlAnonymous
December 18, 2008
PingBack from http://blog.haohtml.com/index.php/archives/725Anonymous
December 18, 2008
相信互联网已经越来越成为人们生活中不可或缺的一部分。ajax,flex等等富客户端的应用使得人们越加Anonymous
January 07, 2009
PingBack from http://www.myphp.cn/380.htmlAnonymous
January 08, 2009
PingBack from http://www.chinatopsem.com/2009/01/09/web/Anonymous
January 08, 2009
PingBack from http://www.chinatopsem.com/2009/01/09/web-optimize/Anonymous
January 11, 2009
相信互联网已经越来越成为人们生活中不可或缺的一部分。ajax,flex等等富客户端的应用使得人们越加Anonymous
January 22, 2009
PingBack from http://www.hilpers.pl/401500-win-xp-i-ograniczenia-podczasAnonymous
January 31, 2009
PingBack from http://cnduyi.cn/2009/02/youhuawangzhanxingnengtigaowangzhansudufangwensudude14tiaoshijian.htmlAnonymous
February 04, 2009
PingBack from http://www.xahuix.com/?p=29Anonymous
February 12, 2009
作者:Fenng|可以转载,转载时务必以超链接形式标明文章原始出处和作者信息及版权声明网址:http://www.dbanotes.net/web/web_image_server.html...Anonymous
March 03, 2009
The comment has been removedAnonymous
April 17, 2009
原贴:http://lovelaozang.cn/show-6789-1.htmlAnonymous
May 29, 2009
PingBack from http://paidsurveyshub.info/story.php?title=ieblog-internet-explorer-and-connection-limitsAnonymous
June 07, 2009
PingBack from http://weakbladder.info/story.php?id=6984Anonymous
June 16, 2009
PingBack from http://workfromhomecareer.info/story.php?id=17241Anonymous
June 16, 2009
PingBack from http://fixmycrediteasily.info/story.php?id=5465