Bobcares

NFS TCP Keepalive: Prevent Connection Drops

by | May 19, 2024

Learn how to enable NFS TCP Keepalive for stable connections. Our NFS Support team is here to help you with your questions and concerns.

NFS TCP Keepalive: Prevent Connection Drops

NFS keepalive helps us maintain and monitor NFS connections. It periodically transmits messages on a connected socket to keep the connection active and operational.

NFS TCP Keepalive: Prevent Connection Drops

Today, we will look closer at the workings of NFS keepalive, its features, and how to enable and configure it on our system.

NFS keepalive helps maintain connections by periodically sending keepalive probe packets. These packets, which contain no data but have enabled ACK flags, are sent once the keepalive timer expires.

If the peer responds, it confirms that the connection is still active. This mechanism helps detect inactive connections and ensures the stability of NFS servers.

Here are some of the features of NFS Keepalive:

  • Periodic Transmission: Sends regular messages to maintain NFS connections.
  • Failure Detection: Identifies when an NFS server stops responding.
  • Connection Re-establishment: Attempts to re-establish connections if they are found to be inactive.
  • Integration with Keepalived: Can be used to detect NFS server failures and switch to a backup node if necessary.

How to enable TCP Keepalive for NFS

  1. Before making any changes, check the current status of the TCP keepalive parameters:

    sysctl -a | grep tcp_keepalive

  2. Then, modify the parameter values. For example, to set the keepalive time to 600 seconds, the number of probes to 4, and the interval between probes to 25 seconds, use these commands:

    sysctl -w net.ipv4.tcp_keepalive_time=600
    sysctl -w net.ipv4.tcp_keepalive_probes=4
    sysctl -w net.ipv4.tcp_keepalive_intvl=25

    These commands configure the TCP keepalive mechanism in the Linux kernel.

  3. Now, add the commands to a startup script or modify the `/etc/sysctl.conf` file to ensure these changes persist across reboots. In other words, add these lines to `/etc/sysctl.conf`:

    net.ipv4.tcp_keepalive_time=600
    net.ipv4.tcp_keepalive_probes=4
    net.ipv4.tcp_keepalive_intvl=25

  4. After modifying the `/etc/sysctl.conf` file, apply the changes by running:

    sysctl -p

NFS keepalive is not enabled by default, and TCP keepalive parameters are set to their default values. We can maintain reliable NFS connections and quickly detect server failures by enabling and fine-tuning these parameters.

Proper configuration of NFS servers, along with the use of Keepalived for failover management, leads to a stable and dependable NFS environment.

[Need assistance with a different issue? Our team is available 24/7.]

Conclusion

In brief, our Support Experts demonstrated how to enable NFS TCP Keepalive for stable connections.

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.