Monday, June 23, 2008

Tweak (Increase or Change) Maximum Simultaneous HTTP and Downloads Connections to Web Server

Shaking your head on why you cannot use Internet Explorer (including all versions of IE, such as IE7 and IE8) to actively download more than 2 files (or 4 files in the case of HTTP 1.0 connection) from a web server via HTTP protocol? Or when already downloading 2 files from a same web server simultaneously, user unable to browse and cannot load the web pages on the website in the same server anymore.The issue is due to the default behavior in Windows settings which limits the number of simultaneous Internet connections to a single web server using HTTP 1.0 and 1.1 protocols. The behavior affects both web browsing using Internet Explorer browser and downloading file with IE, where only two or four active connections can be connected and established at the same time respectively for HTTP 1.1 and HTTP 1.0 server. Note that it’s different issue with security limit imposed on the number of concurrent TCP connect attempts in Windows XP SP2 and Windows Vista.
The limit for HTTP 1.1 is imposed by the HTTP 1.1 specification (
RFC2068) that mandates the two connection limit while the four connection limit for HTTP 1.0 is a self-imposed restriction which coincides with the standard used by a number of popular Web browsers. However, the maximum simultaneous connection limit can be unlocked and changed by changing system registry as shown in procedures below.
Run Registry Editor (regedit).
Navigate to the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
Create the following two new DWORD (32-bit) Value and named them accordingly:
MaxConnectionsPerServerMaxConnectionsPer1_0Server
Set the value data for the registry entries created to an integer that equal to the number of simultaneous connection requests to a single HTTP server allowed. For example, if you want the maximum number of concurrent downloads or web page loading to a single server is 8, just enter the value as 8 (Decimal or Hexadecimal). For 10 connections, enter 10 as Decimal or 000000a as Hexadecimal. By default the values are 2 and 4 respectively.
Reboot system or log off and login again for the change to take effect.