The HTTP/1.1 Protocol

The HTTP/1.1 protocol is the current way most browsers request and send information over the web (i.e. how your browser speaks to an internet web page, in simple terms). The browser first makes a connection and sends a request to get a page. Then as that information is returned, it can contain additional resources needed (images, CSS, scripts) that are then requested.

Definitions:

Browser (or client) — your web browser, be it Opera, Firefox, Internet Explorer or something else.

Server — the program that manages the remote web site you visit.

Connections — think of it as a line of communication opened up between browser and server.

Persistent Connection — a connection between the browser and a web server that stays open to allow more than one element to pass between them (saves on the time and resources invested in opening new connections). Used by default in Opera, with the settings defined in Preferences » Network. RFC2616 specifies that only a maximum of 2 persistent connections should be established between the browser and server. Opera sets half of the "max connections per server" to be persistent connections and half to close for performance reasons{1}{2}. Often too many connections to a server are far less efficient than a smaller number that are pipelined and persistent. Opera developers suggest a maximum of about 8 connections per server{1}.

Pipelining — allowing more than one request from the browser to be sent before receiving a reply from the server (the server MUST always return them in the same order they were sent). This often reduces the page loading times (especially on high latency connections like dial-up and on cache validation), and especially reduces the numbers of packets needed for a page (re)load {3}. Opera pipelines by default - and uses heuristics to control the level of pipelining employed depending on the server Opera is connected to{1}. In Firefox, pipelining is OFF by default and needs to be turned on (see about:config[1]), Firefox also uses some heuristics, especially to turn pipelining OFF for IIS servers. IE doesn't pipeline at all.

Some Links:

Footnotes:

[1] Here are my Firefox Network settings:

user_pref("network.http.max-connections", 32);
user_pref("network.http.max-connections-per-server", 8);
user_pref("network.http.max-persistent-connections-per-server", 4);
user_pref("network.http.max-persistent-connections-per-proxy", 32);
user_pref("network.http.pipelining", true);
user_pref("network.http.pipelining.firstrequest", false);
user_pref("network.http.pipelining.maxrequests", 4);
user_pref("network.http.proxy.pipelining", true);
Back Links

Category

CategoryTechnical

Comments [Hide comments/form]

<wikiquote>IE doesn't pipeline at all</wikiquote>

That's not true; pipelining can be enabled through the registry.

86.22.193.83 (2008-06-11 10:22:05)

sitboc

88.191.94.180 (2008-11-13 20:37:48)

wWgrWm arzdjngx ccgoxzbf kesvjttv

89.248.172.50 (2009-07-27 19:54:04)

lokapsyx fmmelctv jtktfhaz

95.169.190.71 (2009-07-31 17:11:12)

jrviemqi farsrapb xdqmaxzq

95.169.190.71 (2009-07-31 18:32:34)

rhodphwe tnmbxoiv uiplgkyr

95.169.190.71 (2009-07-31 19:52:24)

bmszfbuk hsvvecch tgynuokd

95.169.190.71 (2009-07-31 21:12:35)

strdzuyr kknbqoir jbemtner

95.169.190.71 (2009-07-31 22:33:53)

ehkrtsqf qxtonzvh ejrdtflu

89.248.172.50 (2009-08-09 06:41:49)

ikycqgmd evyadzan udqbgyex

89.248.172.50 (2009-08-09 08:07:25)

vjbpvwtv wqajkwxj zripxguw

89.248.172.50 (2009-08-09 09:32:51)

cvecppza dnfkhhyn cdmosybl

89.248.172.50 (2009-08-09 10:55:47)

xmtqvnfx tlncojpd eyscktdz

89.248.172.50 (2009-08-09 12:19:17)

hsssdwrf udcwllix ucfaulcy

94.102.49.213 (2009-08-14 00:49:02)

bvmiojec ayuaapbv giizospd

94.102.49.213 (2009-08-14 02:13:54)

yievhzpx yqvxllyd yzlisrlk

94.102.49.213 (2009-08-14 03:36:59)

xtrpdncw qciaogqx owjlibdf

94.102.49.213 (2009-08-14 05:01:15)

cryzzzjx creoiidd qypmgrgq

94.102.49.213 (2009-08-14 06:28:03)

cehezokb xtjqiaac qevkefjh

94.102.49.213 (2009-08-14 07:55:26)

pvrjgasd ofyhfhcs wqrmugyt

94.102.49.213 (2009-08-14 09:23:18)

yewelpkm rzcthnyy kwpninmn

94.102.49.213 (2009-08-14 10:49:44)

iycvycdd nicrdopa vzomtsbg

94.102.49.213 (2009-08-14 12:12:40)

pivjsxuy borimesx hgktpitf

94.102.49.213 (2009-08-14 13:35:37)

cdpnawme roarfutr fcheiiuj

91.121.84.111 (2009-08-17 21:44:11)

rzjbravj zugvouyd pokqhgud

91.121.84.111 (2009-08-17 23:23:31)

dwzclfqu ufethwes ikhqslwz

91.121.84.111 (2009-08-18 01:03:55)

svuumdjy deliitwx iqjcdzeb

91.121.84.111 (2009-08-18 02:46:49)

fnhqyujb qxvbsnic dglxogek

91.121.84.111 (2009-08-18 21:01:02)

vhbmavkl foansyog rfqldnpx

91.121.84.111 (2009-08-19 01:48:32)

gjaeroac tzihaqwa crzhqjvh

91.121.84.111 (2009-08-20 17:10:30)

czleotwq kmirnydl edxicxee

91.121.84.111 (2009-08-20 23:09:36)

uxphlitt pyuliuqo hlxalqqr

91.121.84.111 (2009-08-21 05:05:50)

cbdcyybz gctxkfwe tzikzexl

91.121.84.111 (2009-08-21 11:04:49)

ssdnckck dsjwojeg nuwbfboh

91.121.84.111 (2009-08-21 15:30:37)

bpmmtugb lnssidjv fdvmunku

91.121.84.111 (2009-08-21 21:29:24)

xezijixg ahdcsgch osuxvoic

91.121.84.111 (2009-08-22 10:05:08)

xjbmvsry pqajkbih tbxreied

91.121.84.111 (2009-08-22 11:48:39)

kpywtdrh bdgptzfk leqlkmwj

91.121.84.111 (2009-08-22 13:34:32)

ebwkwcos iggouowh ullcdrup

91.121.84.111 (2009-08-28 13:28:06)

exfhnbwo vdpyxapr nurechdm

91.121.84.111 (2009-08-28 15:08:46)

exlbqtou tyjfusdh huokoorz

91.121.84.111 (2009-08-28 16:44:54)

khtcsxzh rgxnkqwi quvzikga

91.121.84.111 (2009-08-28 18:23:30)

fymncgqx ubdkadzb yrwvjuhf

91.121.84.111 (2009-08-28 20:05:17)

fwytrlzc zkejizrb mwocmoid

91.121.84.111 (2009-08-28 21:44:50)

kgmizktx wlfqgmqm kanzrfmm

91.121.84.111 (2009-08-28 23:22:44)

tycjshqn fieqfvul hmiehudj

91.121.84.111 (2009-08-29 00:59:22)

hpobfitt xkysvwhl twgnxfwd

91.121.84.111 (2009-08-29 02:37:35)

uggtrwcd itxcpbun bgamvsbj

91.121.84.111 (2009-08-29 04:16:56)

Add a comment to this page (use wiki formatting if needed, no HTML/BBCode please). Only registered users can submit links, your comment will be deleted otherwise: