- Keepalive
A keepalive is a message sent by one device to another to check that the link between the two is operating.
Description
A keepalive signal is often sent at predefined intervals, and plays an important role on the
Internet . After a signal is sent, if no reply is received the link is assumed to be down and future data will be routed via another path until the link is up again.Since the only purpose is to find links that don't work, keepalive messages tend to be short and not take much bandwidth. However, their precise format and usage terms depend on the communication protocol.
HTTP Keepalive
Keepalive messages were not officially supported in HTTP 1.0. In HTTP 1.1 all connections [http://tools.ietf.org/html/rfc2616#section-8.1 are considered] persistent, unless declared otherwise. However, the [http://httpd.apache.org/docs/2.0/mod/core.html#keepalivetimeout default keepalive timeout] of Apache2 httpd is as little as 15 seconds.
TCP Keepalive
According to [http://tools.ietf.org/html/rfc1122#page-101 RFC 1122] , TCP Keep-alives is an optional feature of the protocol, and if included must default to off.
There are three parameters related to keepalive, viz. Time, interval and retry.
Keepalive time is the duration between two keepalive transmission in idle condition. TCP keepalive period is required to be no less then 2 hours and is usually set by default to this value.
Keepalive Interval is the duration between two successive keepalive retransmissions, if acknowledgement to the previous keepalive transmission is not received.
Keepalive Retry is the number of retransmissions to be carried out before declaring that remote end is not available.
Keepalive packet contains null data. In a
TCP/IP overethernet network, a keepalive frame is of 60 bytes, while acknowledge to this also null data frame and is of 54 bytes.ee also
*
HTTP persistent connections External links
* [http://tools.ietf.org/html/rfc2616#section-8.1 Persistent HTTP Connections in RFC 2616 "Hypertext Transfer Protocol -- HTTP/1.1"]
* [http://httpd.apache.org/docs/2.1/mod/core.html#keepalive Keep-Alive support in Apache HTTP Server]
* [http://www.io.com/~maus/HttpKeepAlive.html HTTP Keep Alive discourse by Jim Driscoll]
* [http://tools.ietf.org/html/rfc1122#page-101 TCP Keep-Alives in RFC 1122 "Requirements for Internet Hosts -- Communication Layers"]
Wikimedia Foundation. 2010.