Skip to content

TechDirectArchive

Hands-on IT, Cloud, Security, Veeam & DevOps

  • Home
  • About
  • Advertise With US
  • Reviews
  • Contact
  • Toggle search form

Keepalive Settings: Understanding keepalive configuration

Posted on 19/10/202003/09/2026 Christian By Christian No Comments on Keepalive Settings: Understanding keepalive configuration
  1. Home
  2. Linux
  3. Keepalive Settings: Understanding keepalive configuration
Network protocols

The keepalive utility helps to manage web traffic and optimize the use of system resources. With the increase in the number of internet users, the workload on web servers also increases. The system administrator hence, has to ensure the server is capable of putting up and accommodating the number of connection requests. Please see the difference between testing and debugging, and how to debug a PowerShell script.

If the number of users accessing the server increases, the whole system may begin to slow down in terms of access speed; it will become necessary at this point to perform routine tcp tuning on a Linux system. This is where the keepalive utility comes into play

Basically, the keepalive keeps a webpage active for a specified period of time after the user has abandoned it. When there is a high volume of users on a server, a decrease in the timeouts on a tcp socket will hence clean up the connections from the clients that are no longer active.

However, when the server is not busy, the default settings for the keepalive utility should be adequate. There are a couple of other parameters defined that I will explain a little later. This utility kills the connection to the server after completion of each client request. With Keepalive utility, it is possible to use the same tcp connection for all the http requests.

Keepalive Configuration

The following is the default configuration of the keepalive utility:

tcp_keepalive_time = 7200
tcp_keepalive_intvl = 75
tcp_keepalive_probes = 9

[all the above values are measured in seconds except the keepalive_probe which is just a number value]

  1. Keepalive_time: this refers to the time of a connection’s inactivity before a keepalive probeis sent.
  2. Keepalive_interval: this refers to the wait time before another keepalive probeis sent.
  3. Keep_alive probes: this is the number of probes that will be sent before the connection is terminated.

Now according to this default setting, our setup will detect an idle in connection in

[7200 + (75 * 9)] seconds = 7,875seconds.
By default, keepalive is not active on a Linux system. To setup,

Keepalive Setup

1. Activate the keepalive tool. By default is off. To activate it, open up the apache configuration file at /etc/httpd/conf/httpd.conf and include the following:

KeepAlive on

2. Open the /etc/sysctl file with your editor and put in the following values:

net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_intvl = 5 net.ipv4.tcp_keepalive_probes = 6

Connection maintenance

The values you choose to use are entirely up to you. It should not be too little or too much if your website’s traffic is much.             

3. Now save and quit the editor. Use sysctl –p to apply these changes to your configuration.

Terminal window displaying commands related to TCP keepalive settings in a Linux environment, including parameters for keepalive time, interval, and probes.

And you are done. Now, there are a couple of sites you can test your set up’s efficacy in terms of understanding keepalive configuration (I am not going to advertise for them). All they require is the name of your website. You can also use a tool such as GTMetrix to check your settings.

Summary

The keepalive utility helps reduce load time on a server when there are multiple requests on the server. To enhance website performance amid heavy traffic, consider utilizing the keepalive utility. This involves understanding keepalive configuration for efficient server-client communication. After enabling it, it automatically opens and closes connections by itself, depending on usage.

However, if you are using a shared hosting provider, there is the likelihood that it will slow down your server.

Thank you for reading this post. Kindly share it with others.

  • Share on X (Opens in new window) X
  • Share on Reddit (Opens in new window) Reddit
  • Share on LinkedIn (Opens in new window) LinkedIn
  • Share on Facebook (Opens in new window) Facebook
  • Share on Pinterest (Opens in new window) Pinterest
  • Share on Tumblr (Opens in new window) Tumblr
  • Share on Telegram (Opens in new window) Telegram
  • Share on WhatsApp (Opens in new window) WhatsApp
  • Share on Mastodon (Opens in new window) Mastodon
  • Share on Bluesky (Opens in new window) Bluesky
Linux Tags:TCP/IP

Post navigation

Previous Post: Linux Machine: Is it Virtual or a Physical server
Next Post: All available Policies for the latest version of Microsoft Edge

Related Posts

  • Webp.net resizeimage 1
    Automate Infrastructure Deployments in the Cloud with Ansible and Azure Pipelines AWS/Azure/OpenShift
  • Gfeature
    How to install Googler on a Linux System Linux
  • maxresdefault
    Linux Directory Hierarchy Linux
  • LINUX CONTAINERS
    How to install LXC/LXD for container management Linux
  • trip wire feature
    How to install and configure Tripwire on Ubuntu Linux
  • SSL on WAMPServer
    Setup VirtualHost with SSL on WAMP Server Linux

More Related Articles

teams feature How to install and configure Microsoft Teams on Ubuntu Linux
how to install software packages from source files How to install a software package from source file in Linux Linux
physical Linux Machine: Is it Virtual or a Physical server Linux
sshfs Mounting remote directory using sshfs Linux
speedtest How to set up a self-hosted speed test server on Ubuntu Linux Linux
Run Linux on Windows Server How to install Windows Subsystem for Linux on Windows Server Linux

Leave a Reply Cancel reply

You must be logged in to post a comment.

Microsoft MVP

vexpert-badge-stars-5

Virtual Background

VEEAMLEGEND

Categories

Top 30 Sysadmin blog

veeaam100

Veeam Vanguard

  • drivelock 1280x720 1
    The server could not be reached or validated: Timeout expired. The Time out expired prior to obtaining a connection from the pool Security | Vulnerability Scans and Assessment
  • Featured image change default mail app
    How to change Windows 11 and 10 default mail app to Outlook Windows
  • ALB Banner e1783275763693
    Azure Load Balancer: Configuring for SQL Server Always On Availability Group Listener on Azure Virtual Machines AWS/Azure/OpenShift
  • Veeam ONE 13.1
    Veeam ONE 13.1.0.7034 Upgrade: Complete Pre-flight and Step-by-Step Guide Backup
  • Upgrade for Veeam ONE
    How to upgrade Veeam ONE to v12.1 Backup
  • Wordpress banner
    Fix WordPress Error “The Link You Followed Has Expired” Web Server
  • azure file share feature image
    Deploy Legacy App to Azure Fileshare AWS/Azure/OpenShift
  • 41592 3264bitw10
    What is the difference between 32-bit and 64-bit processors Windows Server

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,746 other subscribers
  • RSS - Posts
  • RSS - Comments
  • About
  • Authors
  • Write for us
  • Contact
  • Advertise with us
  • General Terms and Conditions
  • Privacy policy
  • Feedly
  • Telegram
  • Youtube
  • Facebook
  • Instagram
  • LinkedIn
  • Tumblr
  • Pinterest
  • Twitter
  • mastodon
  • Bsky

Tags

Active Directory Azure Bitlocker Microsoft Windows PowerShell WDS Windows 10 Windows 11 Windows Deployment Services Windows Server 2016

Copyright © 2026 TechDirectArchive

Loading Comments...

You must be logged in to post a comment.