Please Whitelist This Site?
I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)
If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.
If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK.
Thanks for your understanding!
Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide
|
NOTE: Using software to mass-download the site degrades the server and is prohibited. If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.
|
|
|
|
HTTP Transitory and Persistent Connections and Pipelining
(Page 2 of 3)
Persistent Connections
The solution to the inefficiency
problem of transitory connections came in HTTP/1.1, which allows an
HTTP client and server to set up a persistent connection. The
basic operation of HTTP is not changed; the main difference is that
by default, the TCP connection is kept open after each request/response
set, so that the next request and response can be exchanged immediately.
The session is only closed when the client is done requesting all the
documents it needs.
Keeping the TCP connection between
an HTTP client and server alive between requests is probably the single
most important way that HTTP/1.1 improves performance over version 1.0.
Clients are able to get their files more quickly because they don't
have to wait for a TCP connection before each resource is retrieved.
Server load is reduced and memory use in busy servers is conserved.
Network congestion is reduced through the elimination of unnecessary
TCP
handshaking segments.
Pipelining
Persistent connections offer another
important performance-enhancing option to HTTP clients: the ability
to pipeline requests. Suppose the client needs to send a request
for files A, B and C to a server. Since the requests
for all of these files will be sent in the same TCP session, there is
no need for the client to wait for a response to its request for A
before sending the request for B. The client can send requests
rapid-fire, one after the other. This also improves the
efficiency of the server, which will be able to fill the requests in
the order in which they are received, as soon as it is able, without
having to pause to wait for each new request to be sent.
Key Concept: HTTP/0.9 and HTTP/1.0 only supported transitory connections between an HTTP client and server, where just a single request and response could be exchanged on a TCP connection. This is very inefficient for the modern Web, where clients frequently need to make dozens of requests to a server. HTTP/1.1 operates by default using persistent connections: once a TCP connection is established, the client can send many requests to the server and receive replies to each in turn. This allows files to be retrieved more quickly, and conserves server resources and Internet bandwidth. The client can even pipeline its requests, sending the second one immediately, without having to first wait for a reply to the first one. HTTP/1.1 still supports transitory connections for backwards compatibility, when needed. |
If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support! |
|
|
Home -
Table Of Contents - Contact Us
The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005
© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.
|