Linux Tuning

Linux, by default, restricts the percentage of system resources that the TCP stack can use. Heavily-loaded ConferenceRoom servers can easily hit this limit. Note that if you handle 2,000 clients or fewer, you probably do not need to do any tuning.

For RedHat Linux, you can tune kernel parameters by modifying the /etc/sysctl.conf file. The following entries are suggested:

# Tune TCP for ConferenceRoom
net.core.hot_list_length = 512
net.core.netdev_max_backlog = 1024
net.ipv4.tcp_max_tw_buckets = 1800000
net.ipv4.tcp_mem = 512000 512000 512000

You can make these changes take effect immediately by typing:
sysctl -p /etc/sysctl.conf

Note that these changes allow the TCP stack to use essentially all of the system memory and disables Linux's TCP memory pressure logic. This is probably not appropriate on a machine that is not dedicated to TCP applications such as web servers and chat servers.

If you are not getting Out of socket memory error messages in your log, you can leave out the net.ipv4.tcp_mem line.

Maintained by David Schwartz, questions may be sent to WebMaster Support

Contents Copyright (C) 2002, WebMaster