only for RuBoard - do not distribute or recompile Previous Section Next Section

1.13 Persistent Connections

A major feature required in HTTP 1.1 is persistent connections. Persistent connections keep the network connection open for multiple transactions between the client and server to occur. Under both HTTP 1.0 and 1.1, the Connection header controls whether or not the network connection stays open; however, its use varies according to the version of HTTP.[3]

[3] Persistent connections are not in the HTTP 1.0 specification, but it was common practice for HTTP 1.0 software to implement persistent connections.

The Connection header indicates whether the network connection will be maintained after the current transaction finishes. The close parameter signifies that either the client or server wishes to end the connection (i.e., this is the last transaction). The keep-alive parameter signifies that the client wishes to keep the connection open. Under HTTP 1.0, the default is to close connections after each transaction, so the client must use the following header in order to maintain the connection for an additional request:

Connection: Keep-Alive

Under HTTP 1.1, the default is to keep connections open until they are explicitly closed. The keep-alive option is therefore unnecessary under HTTP 1.1; however, clients must be sure to include the following header in their last transaction:

Connection: Close

or the connection will remain open until the server times out the connection. How long it takes the server to time out depends on the server's configuration; but needless to say, it's more considerate to close the connection explicitly.

only for RuBoard - do not distribute or recompile Previous Section Next Section