(Translated by https://www.hiragana.jp/)
Connectivity Enhancements in Internet Explorer 8
The Wayback Machine - https://web.archive.org/web/20080420044631/http://msdn2.microsoft.com:80/en-us/library/cc304129(VS.85).aspx
Click to Rate and Give Feedback
HTML and DHTML Overviews and Tutori...
 Connectivity Enhancements in Intern...
Connectivity Enhancements in Internet Explorer 8
New for Windows Internet Explorer 8
Note: This documentation is preliminary and is subject to change.

Internet Explorer 8 contains several important connectivity enhancements that can improve both the performance and functionality of Asynchronous JavaScript and XML (AJAX) and other Web applications. These enhancements include an increase in the maximum number of concurrent connections from a single host, and the addition of connectivity events.

This topic contains the following sections.

Concurrent Connections

With Internet Explorer 8, the maximum number of concurrent connections from a single host process connecting via broadband to a single server has been increased to 6. In Internet Explorer 7 and earlier, the maximum number of concurrent connections per host process to a single server via HTTP 1.1 is 2. For HTTP 1.0, the limit is 4, though HTTP 1.1 connections are far more common today. Note that the maximum number of concurrent connections from a single host process connecting via narrowband (for instance, with a modem over a telephone line) to a single server remains the same as for Internet Explorer 7 and earlier.

The following table summarizes the maximum number of concurrent connections based on the version of Internet Explorer running on the host, the host's connection speed, and the server's supported protocol version.

VersionHTTP 1.0 server (broadband connection)HTTP 1.1 server (broadband connection)HTTP 1.0 server (narrowband connection)HTTP 1.1 server (narrowband connection)
Internet Explorer 7 and earlier4242
Internet Explorer 86642

Some Background

While the four-connection limit for HTTP 1.0 was set to match the behavior of most other browsers at the time, the two-connection limit for HTTP 1.1 was due to a mandate that was established in the HTTP 1.1 specification (Request for Comment 2616) World Wide Web link. At the time the standard was first drafted (January 1997), the two-connection limit was appropriate, considering the dominance of narrowband Internet connections and the scarcity of broadband connections.

Since the HTTP 1.1 standard was drafted, however, high-bandwidth connections have become more commonplace, thereby negating client-side bandwidth as a gating factor in connection speed. Typically, the time required to setup a connection and send a request comprises most of the time spent retrieving individual objects. In addition, the improved capabilities of today's Web and proxy servers reduces the risk of overwhelming the network infrastructure with an increase in per-host connections. The need for more per-host connections is especially strong considering the increase in popularity of AJAX applications and pages, many of which send large amounts of data asynchronously.

New Scriptable Connection Properties

You may have compatibility concerns with this new behavior if you had implemented workarounds to circumvent the previous limitations. In that case, to avoid overwhelming your Web server, you may wish to tailor content delivery based on the number of connections each client computer is capable of having open concurrently. To that end, Internet Explorer 8 includes two new read-only properties of the window object that enable your server to determine the number of available connections on the client computer. The new properties and their return values are listed in the following table.

Server TypeScriptable PropertyReturn Value
HTTP 1.1window.maxConnectionsPerServerMaxConnectionsPerServer
HTTP 1.0window.maxConnectionsPer1_0ServerMaxConnectionsPer1_0Server

Changing the Number of Maximum Concurrent Connections

End users who experience problems with page load times can change the number of maximum concurrent connections to a single server in two ways—via a feature control key and a registry key.

Note  This section contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, see How to back up and restore the registry in Windows XP and Windows Vista World Wide Web link in the Microsoft Knowledge Base.

Feature Control Key Method

The first method involves modifying a feature control key, FEATURE_AJAX_CONNECTIONSERVICES. Setting this key to 0 will revert Internet Explorer to the default of two connections per host for HTTP 1.1 servers, and will revert Internet Explorer to four connections per host for HTTP 1.0 servers. To modify this feature control key, follow these steps:

  1. Start Regedit.
  2. Navigate to the following registry key. If it doesn't already exist, create it.

    • HKEY_LOCAL_MACHINE
      • SOFTWARE
        • Microsoft
          • Internet Explorer
            • MAIN
              • FeatureControl
                • FEATURE_AJAX_CONNECTIONSERVICES
  3. Create a new DWORD called iexplore.exe and set its value data to 0000000.

If, after creating the registry key, you want to enable the feature again, you can set the value for iexplore.exe to 0000001. The concurrent connection limit will thereafter be 6 for both HTTP 1.0 and HTTP 1.1 servers.

Registry Key Method

The second method involves modifying (or creating, if it doesn't already exist) a registry key. Performing the following steps will change the connection limit per server for Microsoft Windows (including Internet Explorer) to a user-chosen limit.

  1. Start Regedit.
  2. Navigate to the following registry key:
    • HKEY_CURRENT_USER
      • Software
        • Microsoft
          • Windows
            • CurrentVersion
              • Internet Settings
  3. For HTTP 1.1 server settings, create a new DWORD called maxConnectionsPerServer. For HTTP 1.0 server settings, create a new DWORD called maxConnectionsPer1_0Server.
  4. Set the value data for the DWORD to the maximum number of concurrent connections desired. For example, if you want the maximum number of concurrent connections to be 2, enter 0000002.

Connectivity Status Improvements

Note  For Internet Explorer 8 Beta 1, the new functionality described in this section only applies to Windows Vista.

Internet Explorer 8 enables your page or application to query whether the browser has a network connection. In Internet Explorer 7 and earlier, this functionality does not exist, and can therefore lead to an undesirable user experience should the user's computer lose connectivity.

New onLine Property Functionality

The onLine property (of both the window.navigator and window.clientInformation objects) has been available since Microsoft Internet Explorer 4.0. However, in Internet Explorer 4.0 through Internet Explorer 7, the onLine property only indicates whether the system is in "global offline mode," which users initiate by choosing Work Offline from the File menu. In those versions, the onLine property does not indicate whether the system is connected to the network. In Internet Explorer 8 and later, however, the onLine property indicates whether the system is actually connected to the network.

To query the network connection status, call window.navigator.onLine. The property returns true if the system is connected to the network, and false if not.

New Simple Events

When the window.navigator.onLine property changes after a page is loaded, a simple event is raised on the page's body element as follows.

  • If onLine changes from true to false, the offline simple event is raised on the body element.
  • If onLine changes from false to true, the online simple event is raised on the body element.

For more information on raising events on HTML elements, see the HTML 5 (Working Draft) World Wide Web link on the World Wide Web Consortium (W3C) Web site. The online and offline events comply with the W3C HTML 5 Working Draft as of March 2008.

New Callback Handlers

To indicate a change in the status of a connection, Internet Explorer 8 introduces the following callback handlers:

  • The onoffline handler is raised when the user's computer loses its network connection—for example, when the network cable is unplugged or the network adapter is disabled. It is also raised when the user toggles the Work Offline setting on.
  • The ononline handler is raised when the computer's network connection is restored. It is also raised when the user toggles the Work Offline setting off.
Tags What's this?: Add a tag
Community Content
 
Add Community Content
© 2008 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker