Linux increasing or decreasing TCP sockets timeouts

Posted on in Categories Linux, Troubleshooting, Tuning last updated June 14, 2006

Some time it is necessary to increase or decrease timeouts on TCP sockets. You can use /proc/sys/net/ipv4/tcp_keepalive_time to setup new value.

The number of seconds a connection needs to be idle before TCP begins sending out keep-alive probes. Keep-alives are only sent when the SO_KEEPALIVE socket option is enabled. The default value is 7200 seconds (2 hours).

For example set value to 2400 seconds:

echo 2400 > /proc/sys/net/ipv4/tcp_keepalive_time

You can make changes to /proc filesystem permanently using /etc/sysctl.conf

Further reading

  • See man page of ip(7) and tcp(7) for more details.
  • Securing and Optimizing Linux book (by OpenNA), network optimization chapter

2 comment

  1. Thank you for this note.

    But I still have a question
    tcp_keepalive_time means that socket connection will be killed in 2 hours (by default) in any case or if socket connection is not active (messages are not sending)?

Leave a Comment